2016-12-16 8 views
0

Laravelを使用しているコードに問題があります。私は、リストを取得するためにモデル内に属性を定義します。それは多くの時間がかかります。私はコントローラでこのモデルを使用します。モデルでのMySQLでクエリを回避するために、コントローラやモデル内の属性がある場合、私は思ったんだけどlaravelのモデルはコントローラからのリクエスト情報を取得します

protected $appends=["consume_info"]; 
public function getConsumeInfoAttribute(){ 
    //query a lot of information from mysql 
} 

:コードに従ってください。

この追加属性をロードするタイミングをLaravelに通知する設定はありますか?

+1

なぜ単に関数をappendの代わりに使用するのはなぜですか?必要なときに 'getConsumeInfo()'のようなものを呼び出し、 '$ model-> getConsumeInfo()'のように呼びますか? – prateekkathal

+0

あなたは正しいですが、私はそれについて本当に興味があります。コードがいつ動作するかを決めるために、モデルにフラグを設定することをお勧めします。 –

答えて

1

$ appends配列からconsume_infoを削除するだけではどうですか。あなたは$model->consumer_infoとそれを必要とするときにだけ得ます。

+0

あなたは正しいですが、私は本当に興味があります。コードがいつ動作するかを決めるために、モデルにフラグを設定することをお勧めします。 –

関連する問題