2016-11-05 4 views
1

LaravelにCheckoutというモデルがあります。チェックアウトと呼ばれるデータベース内のテーブルに結び付けられているだけです。Laravel Models - 非データベースフィールドを追加

namespace App; 

use Illuminate\Database\Eloquent\Model; 

class Checkout extends Model 
{ 
    protected $primaryKey = 'id'; 
    protected $table = 'checkouts'; 
} 

私がしたいのは、テーブルのフィールドではないモデルにフィールドを追加することです。これも可能ですか?

私はモデルを完全に手動で構築する予定ですが、そのいずれもその例は見たことがありません。

ご協力いただければ幸いです!おかげで、

答えて

0

あなたがようLaravelのAccessorを使用することができます。

public function getSomeExtraFieldAttribute() 
{ 
    return 2*4; // just for exmaple 
} 

次に、あなたは

$checkout = App\Checkout::find(1); 

$checkout->some_extra_field; 
+0

を使用してアクセスすることができ、私はドキュメントを探しています...私が作成した場合、私は、それを理解する方法をモデル内の関数getSomeFieldAttributeという名前のアプリケーションで、some_fieldとして呼び出すことができます(そのモデルに接続されたデータベースのフィールドのように)...これを正しく理解していますか? – aserwin

+0

はい、あなたはr8を持っていますし、 '$ this-> id'として' $ this'を使って 'getSomeFieldAttribute()'関数の中でモデルの属性を使うこともできます –

+0

Laravelはうまくいっています。ご協力いただきありがとうございます。 – aserwin

関連する問題