【发布时间】:2017-09-26 23:11:30
【问题描述】:
当给定一个表格,比如一张注册表,并且您要求客人输入他们的生日才能进行注册时,您如何从所有三个输入中获取数据并将其合并为一个,然后再将其放入数据库?
在 Laravel 中,我有一个这样的表单输入:
<select name="birthdayMonth">
<option value="1">January</option>
</select>
<select name="birthdayDay">
<option value="1">01</option>
</select>
<select name="birthdayYear">
<option value="1900">1900</option>
</select>
因此,当我单击提交并且 POST 控制器接收到调用时,这就是我的方法所做的:
public function processRegister() {
$user = new User(Input::all());
$user->password = md5(Input::get('password'));
$user->save();
return View::make('user.registerSuccess');
}
好的,那么,如何将通过 Input::all() 传入的三个输入格式化为一个生日输入?我的数据库中没有“birthdayMonth”、“birthdayDay”和“birthdayYear”表。我只有一个时间戳“生日”。
我是否需要让它在模型中看起来很丑,并防止这三个输入的大量分配,或者是否有更漂亮和看似更好的方法来做到这一点?
如果您需要更多信息,请告诉我,我会尽快提供。
谢谢。
【问题讨论】:
-
供参考:这是一个测试文件。不, md5() 调用不会在实际互联网上的任何地方进行。 ;)