我正嘗試在Laravel模型中創建一個自定義屬性。這個屬性對於所有的Model實例都是一樣的(static?)。目標是在創建Model實例時使用此屬性填充選擇下拉列表。例如:在Laravel模型中創建自定義變量/屬性
class User extends Model
{
protected $table = 'users';
protected $guarded = [ 'id' ];
public $timestamps = true;
protected $genders = ['male'=>'Male', 'female'=>'Female']; //custom
public static function getGenderOptions() {
return $genders;
}
}
然後建立表單時,我可以這樣做:
// UserController.php
$data['select_options'] = User::getGenderOptions();
return view('user.create', $data);
// create.blade.php
{!! Form::select('gender', $select_options) !!}
這使我得到的錯誤:
Undefined variable: genders
我試圖避免雜亂我的控制器與所有的選擇選項,因爲還有一些我沒有包括在內。
謝謝。
謝謝,這個工作。現在,這些選項僅用於用戶,但如果它們開始在別處使用,那麼我打算將它們移動到某種配置。 – Stetzon