public function filterBySmartyFilter($smartyFilter, $comparison = null)
    {
        if ($smartyFilter instanceof \SmartyFilter\Model\SmartyFilter) {
            return $this
                ->addUsingAlias(SmartyFilterI18nTableMap::ID, $smartyFilter->getId(), $comparison);
        } elseif ($smartyFilter instanceof ObjectCollection) {
            if (null === $comparison) {
                $comparison = Criteria::IN;
            }

            return $this
                ->addUsingAlias(SmartyFilterI18nTableMap::ID, $smartyFilter->toKeyValue('PrimaryKey', 'Id'), $comparison);
        } else {
            throw new PropelException('filterBySmartyFilter() only accepts arguments of type \SmartyFilter\Model\SmartyFilter or Collection');
        }
    }