使用laravel演示者内部照亮/ html模型形式

时间:2015-05-02 22:01:59

标签: php laravel

我使用laracasts视频中的laravel演示者。基本上它并不重要。我想要的是在使用Form::model时格式化输出数据。所以,例如,我有一个电话号码输入:

<div class="form-group">
   {!! Form::label('phone', 'Phone' ) !!}
   {!! Form::text('phone', null, ['class' => 'form-control', 'id' => 'phone']) !!}
</div>

在DB中我以e.164格式存储手机,但是当我输出它们时,我想以更易读的格式显示它们。但Laravel的数据访问器对我没有帮助,因为在我的应用程序中我想使用e.164。如果我为手机属性设置访问者,我将无法在课程中获得e.164。因此,我不是访问者,而是用户主持人,但这并不重要。假设我在number_format内输出模型属性时想要使用php Form::text函数。我怎么能这样做?

1 个答案:

答案 0 :(得分:1)

没有什么可以强迫你拥有一对一的田间关系访问者。因此,您可以创建要在表单中使用的格式化电话属性,并直接在您的班级中使用phone属性。

public function getFormattedPhoneAttribute()
{
    return // formatted $this->phone
}

如果您已经设置了演示者,那么您可以在表单中使用它们,而不是使用Form :: model。

<div class="form-group">
   {!! Form::label('phone', 'Phone' ) !!}
   {!! Form::text('phone', $user->present()->phone, ['class' => 'form-control', 'id' => 'phone']) !!}
</div>

其中任何一个应该适合你,但我建议你选择一个:访问者或演示者,而不是两者。