【发布时间】:2015-05-13 17:51:14
【问题描述】:
我正在使用 laravel 5 构建应用程序。 我有这样的代码:
public function store(ArticlesRequest $request, Pages $page)
{
$parentSlug = Pages::getParentSlug($request->parent_id);
$slug = ($request->slug)? $request->slug:$request->generic_title;
$validSlug = $request->makeSlug($slug);
$request->slug = $validSlug;
$page->create($request->all());
}
我想在保存之前更新一些数据,例如 slug,在这种情况下,但如果我不直接从表单字段输入,它不会保存 slug 字段。如何更新包含元素值的 $request?例如 $request->slug = $validSlug;并将我编辑的 slug 保存在数据库中。 非常感谢!
【问题讨论】:
-
您可能希望将该逻辑移至模型中的attribute mutator
-
@lukasgeiter 很清楚如何在一个字段中设置和获取属性,但是你能告诉我如何使用属性 mutator 合并两个输入字段吗?例如,我有 publish_date 和 publish_time,我将它们一起插入 DB。谢谢! :)
-
没有一个很好的解决方案。你可以传递一个包含两个值的数组......如果你需要更多帮助,请提出一个新问题:)