2012-07-31 2 views
1

필자는 가지고있는 문제에 대한 해결책을 생각하거나 찾아 내려고 노력해 왔습니다. 내 Yii 응용 프로그램의 메뉴 시스템을 만드는 중이지만 테이블에 URL을 작성하는 데 필요한 항목의 일부를 저장해야합니다. system_menu_item이라는 테이블이 있습니다.Yii - 테이블에 저장된 데이터로 링크 만들기

-------------------------------------- ------------------------------- | item_id | dis_text | 행동 | 변수 | ------------------------------------------------- -------------------- | 1 | 기사 편집 | 문서 /보기 | array ('id'=> $ model-> arl_id) |

은 내가 무엇을 기대되었다 :이 내가이 일 전부가 아니다 그것을하는 다른 방법을 시도 .. 작동하지 않습니다

$model = SystemMenuItem::model()->findByPk('1'); 
$url = yii::app()->createUrl($model->action, $model->variables); 

. 어떤 아이디어? 나는이 문제를 추측거야

감사

+0

"이 기능이 작동하지 않는다"는 것은 무엇을 의미합니까? 그것은별로 도움이되지 않으며 우리에게 아무 것도 말하지 않습니다. 이 코드를 실행 한 후 var_dump ($ model) 및 var_dump ($ url)은 무엇입니까? – ernie

답변

1

은 $ 모델 -이> 변수 값 array('id'=>$mode->arl_id)의 문자열로 평가한다는 것입니다.

못생긴 (위험!) 아마 당신의 매개 변수를 저장하는 다른 방법을 파악하는 것입니다 더 좋은 방법을 eval()

을 사용하여 이것을 읽을하는 것입니다 해킹 및 수행 한 후 배열로 읽을 당신의 DB 쿼리.

+0

고맙습니다 ..이 코드가 작동했습니다 :'$ url = yii :: app() -> createUrl ($ model-> action, eval ('return'. $ model-> variables. ';'));'. 나는 전에 eval을 시도했지만 작동하지 않았다. 나는 진술을 닫는 것을 잊었다 고 생각한다. 나는 eval을 사용할 때의 위험을 안다. 그러나이 필드는 관리자가 아닌 모든 사람에게 공개 될 것이다. –

관련 문제