1

私は自分が抱えている問題の解決策を考えたり見つけたりしようとしてきました。Yiiアプリのメニューシステムを作成していますが、URLを作成するために必要なアイテムの一部をテーブルに保存する必要があります。system_menu_itemというテーブルがあります。

-------------------------------------------------- ------------------- | item_id | dis_text | アクション| 変数| -------------------------------------------------- ------------------- | 1 | 記事を編集| ドキュメント/ビュー| array('id' => $ model-> arl_id)|

私が望んでいたのは:

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

これは機能しません..私はそれをすべて機能しないようにするさまざまな方法を試しました。何か案は?

ありがとう

4

1 に答える 1

1

問題は、 $model->variables が value の文字列に評価されることだと思いますarray('id'=>$mode->arl_id)

醜い (そして危険な!) ハックは、 eval()を使用してこれを読み取ることです。

より良い方法は、おそらくパラメーターを格納する別の方法を見つけ出し、DB クエリを実行した後にそれらを配列に読み込むことです。

于 2012-07-31T16:47:54.347 に答える