2016-09-03 17 views
0

現在、Laravel 5.2を使用しているWebサイトを開発しています。この問題は何度も起こりましたので、私は助けを求めることにしました。Laravel - DBのモデルプロパティを追加選択

私はあなたに私の問題の簡単な例を挙げます。

私はクライアントのDBを持っているとしましょう。列番号id、名前、姓などがあります。私はブレードビューでクライアントのフルネームを取得したいと思います。

現在、私はこのような何か

class Client extends Model { 
    public function fullName() { 
     return $this->name . " " . $this->surname; 
    } 
} 

を行うだろう。そして私の見解で、私は$client->fullName()を行うだろう。

それは機能しますが、私は正しいアプローチではないと思います。フルネームがメソッドではなくオブジェクトのプロパティとして格納されている方が良いでしょう。

これを行う方法はありますか?私はこの問題がかなり共通しているので、Laravelでこれを行う方法があるに違いないと確信していますが、私の問題は私が何をgoogleするべきかわかりません。

答えて

2

あなたがそう

public function getFullNameAttribute() 
{ 
    return $this->name . " " . $this->surname; 
} 

のようにそのためのアクセサを定義し、$にその属性を追加することは、自動的に両方のモデルの配列に含まれるJSONが今することができます

protected $appends = ['full_name']; 

を形成するためにプロパティを追加しますプロパティ$ user-> full_nameとしてアクセスします。

Laravel Accessors & Mutators

+0

大変ありがとうございます!これは私の人生をそう簡単にするつもりです:) – Kuxa

関連する問題