2011-11-04 4 views
0

url_for 메소드로 객체를 사용하여 problen을 사용하고 있는데, 자동으로 parapeters가 필요하다는 생각이 들었습니다. $ 포스트가 작용에 의해 전달되고 최근에 만든 게시물을 포함하고 있습니다PHP Symfony Route에 필수 매개 변수가 누락되었습니다.

The "/publish/:id/:token" route has some missing mandatory parameters (:id, :token). 

routing.yml

post_publish: 
    url:  /publish/:id/:token 
    options: 
    model: HookupPost 
    type: object 
    method_for_criteria: doSelectOneInactive 
    param: { module: post, action: show } 
    requirements: 
    id: \d+ 
    token: \w+ 
    sf_method: [GET] 

newSuccess.php

<?php echo public_path(url_for("@post_publish", $post), true); ?> 

!

누구든지 왜이 오류가 발생하는지 알고 계십니까? 내가 뭔가 잘못 이해 한거야?

감사합니다,

답변

2

당신은 sfDoctrineRoute 선언이 누락 :

post_publish: 
    url:  /publish/:id/:token 
    class: sfDoctrineRoute 
    options: 
    model: HookupPost 
    type: object 
    method_for_criteria: doSelectOneInactive 
    param: { module: post, action: show } 
    requirements: 
    id: \d+ 
    token: \w+ 
    sf_method: [GET] 

을 그리고 당신은 할 수 있습니다 :

<?php echo public_path(url_for("post_publish", $post), true); ?> 

참조 : 좀 객체를 지나가는 지점을 무시 http://www.symfony-project.org/jobeet/1_4/Doctrine/en/05

0

보십시오 : 당신의 Post 클래스에 따라 유사한

<?php echo public_path(url_for("post_publish", 
     array('id' => $post->id, 'token' => $post->token)), true); ?> 

또는 뭔가.

+0

, 그래서 나중에 경로를 수정할 수 있습니다. –

+0

주요 목표는 @을 취하는 것입니다. :디 – samura

관련 문제