09/02/16 23:37:58
>>639
補足
アクション内からなら、
sfContext::getInstance()->getController()を
$this->getController()に変更出来る(やってることは同じ。少しは短くなった?)
また、内部URLではなく、ルート名と、クエリパラメータにする値が分かっているのなら、アクション内で
$this->generateUrl($route, $params, $absolute)を呼ぶことでURLを生成することができます。
ここで、
$routeはルート名
$paramsはモデルオブジェクトか値の配列。
ただしモデルオブジェクトが渡せるのは、ルートのoptions['type'] === 'object'の時のみ。
(一言でうまく説明出来ないので、詳細はsfObjectRoute::generate()のソース見て)
配列であれば、タイプに関係なく渡せる。
クエリパラメータが不要な時は空配列(array())
$absoluteは>>635同様、絶対パスか相対パスかどうか
わたしは、アクション内でリダイレクトのURLを作成する際にgenerateUrl()を使用しています。