【问题标题】:How to correctly store the date on the database from the model Laravel如何从模型 Laravel 正确地将日期存储在数据库中
【发布时间】:2017-12-24 08:37:49
【问题描述】:

请帮助我,我正在使用 Laravel 5.4,我想从模型函数中保存数据库。

这是我的控制器

public function addStockSizes(Request $request)
{
    if ($request->isMethod('post')) {
        $this->validate($request, [
            'size' => 'required',
        ]);

        $data['size'] = $request->input('size');
        $data['netSize'] = $request->input('net_size');
        $data['mouseText'] = $request->input('mouse_text');

        Stock_size::createSize($data);

        return redirect()->back()->with('success', true)->with('message', 
        'Size is successfully added');
    } else {
        $sizes = Stock::all();
        return view('admin.StockSize.addStockSizes', compact('sizes'));
    }
}

这是我在模型中的功能

public static function createSize($data)
{
    $size = $data['size'];
    $netSize = $data['netSize'];
    $mouseText = $data['mouseText'];

    $model = new self();
    $model->size = $size;
    $model->net_size = $netSize;
    $model->mouse_text = $mouseText;
    $model->save();
}

【问题讨论】:

    标签: php database laravel model save


    【解决方案1】:

    您可以在 Eloquent 模型上使用 create 函数。此函数需要一个关联数组与数据库的数据。

    Stock_size::create($request->only(['size', 'net_size', 'mouse_text']));
    

    请记住,您可能会收到MassAssignmentException,因为默认情况下模型属性会受到保护。这可以通过添加插入到模型的 $fillable 数组中的字段来解决:

    protected $fillable = ['size', 'net_size', 'mouse_text'];
    

    【讨论】:

    • 我想在模型中创建函数来保存数据
    • create函数就是这么做的,不需要再写一个函数了。
    猜你喜欢
    • 1970-01-01
    • 2021-09-30
    • 2014-11-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-12-12
    • 2022-01-08
    相关资源
    最近更新 更多