当表单中有需要提交数组到数据库,比如要加一些客服qq的信息,laravel 会抛出输入的字段不能为数组的错误,解决办法也很简单。
增加多个qq客服需要用到数组
抛出的错误
errorexception in helpers.php line 671:preg_replace(): parameter mismatch, pattern is a string while replacement is an array
复制代码
解决办法:
模型中把需要提交的字段“阻止”,在控制器中单独用input接收并将其序列化,然后再进行保存就可以了。
模型示例:
class shop extends model{ public $timestamps=false; protected $guarded = ['qq','submit'];}
复制代码
控制器示例
public function store(checknamerequest $request){ $shop = shop::create(input::get()); $shop->qq = serialize(input::get('qq')); $shop->save();}
复制代码
同理,在显示的时候将其反序列化即可。
原文地址:http://note.mango.im/article/24
解决办法, laravel