你好!我使用 symfony 1.4.11。在我的项目的所有用户广告中,只有当它的所有者拥有高级帐户时才能在网站上使用。问题是所有广告都可以在直接链接上使用......所以我从 Jobbet 的第 6 天开始使用这个问题的决定。路由:
ads_show_user:
url: /:sf_culture/ads/:slug
class: sfDoctrineRoute
options: { model: Ads, type: object, method_for_query: retrievePayAd }
param: { module: ads, action: show }
requirements:
sf_method: [get]
sf_culture: (?:de|en|ru)
模型:
public function retrievePayAd(Doctrine_Query $q)
{
$q ->leftJoin('a.Owner o')
->leftJoin('o.Profile p')
->andWhere('p.payed_until > NOW()')
->andWhere('a.active = ?',1)
->andWhere('a.expires_at > NOW()');
return $q->fetchOne();
}
一切正常,但下一个问题是,如果广告所有者没有支付溢价,他也不能像所有用户一样看到他的广告的扩展版本......是否可以将用户重定向到 404 页面,但其他页面,我可以说用户,为什么他看不到他的广告的扩展版本?或者有没有其他方式让广告所有者可以看到扩展版本?谢谢 !