首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >将值过帐到数据库laravel

将值过帐到数据库laravel
EN

Stack Overflow用户
提问于 2018-08-02 03:16:10
回答 1查看 32关注 0票数 0

我正在尝试给我的缩略图添加一个描述,但是它不会在我的数据库中更新。

你们知道为什么吗?

唯一的thumb_description不会更新。

文件已填充。当我执行$content->save()时,它将返回true。

控制器:

代码语言:javascript
复制
public function detail(Request $request, $id)
    {
        $content = Content_blocks::find($id);

        if ($request->isMethod('post')) {
            if ($request->hasFile('image')) {
                $folder = 'uploads';
                $name = $request->image->getClientOriginalName();
                $store = $request->image->store($folder, 'public');
                $file = pathinfo(Storage::url($store));
                $thumb_description = $request->input('thumb_description');

                $thumbnail = new Thumbnail();
                $thumbnail->name = $file['filename'];
                $thumbnail->extenstion = $file['extension'];
                $thumbnail->path = $folder;
                $thumbnail->thumb_description = $thumb_description;
                $thumbnail->save();
                $content->thumbnail_id = $thumbnail->id;

            }

            $content->title = $request->input('title');
            $content->description = $request->input('description');
            $content->link = $request->input('link');
            $content->linkname = $request->input('linkname');
            $content->order = $request->input('order');
            $content->contentcategory_id = $request->input('categorie');
            $content->thumbnail->thumb_description = $request->input('thumb_description');


            if ($request->input('ontkoppel') === 'deletion') {
                Thumbnail::find($content->thumbnail_id)->delete();
            }

            // dd($content->thumbnail->thumb_description);
            $content->save();


            return redirect('admin/content/webcategorie/homepage/contentblocks/' . $content->content_id);
        }

模型

代码语言:javascript
复制
<?php

namespace App\Models;

use Illuminate\Support\Facades\Storage;

class Thumbnail extends Model
{

    protected $fillable = [
        "thumb_description",
        "name",
        "path",
        "extenstion"
    ];
    protected $table = 'thumbnail';

    public function content()
    {
        return $this->belongsTo(Content::class);
    }

    public static function getFile($id)
    {
        $thumbnail = self::find($id);

        if ($thumbnail === null) {
            return null;
        }

        $url = sprintf('%s/%s.%s', $thumbnail->path, $thumbnail->name, $thumbnail->extenstion);

        return Storage::disk('public')->url($url);
    }
    public static function getDescription($id)
    {
        $thumbnail = self::find($id);

        if ($thumbnail === null) {
            return null;
        }

        $description = $thumbnail->thumb_description;

        return $description;
    }
}

迁移

代码语言:javascript
复制
   */
public function up()
{
    Schema::create('thumbnail', function (Blueprint $table) {
        $table->increments('id');
        $table->string('name', 255);
        $table->string('path', 150);
        $table->string('extenstion', 10);
        $table->text('thumb_description');
        $table->timestamps();
    });
}

chrome开发工具中的Post

代码语言:javascript
复制
------WebKitFormBoundaryfun4SMk5TA604OZE

Content-Disposition: form-data;name="thumb_description“

布鲁扬加

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-08-02 03:27:58

$content->save();将只保存$content上的属性,而不保存其关系。

而是尝试$content->push();,它应该级联加载的关系,并保存所有相关的模型。

https://laravel.com/api/5.6/Illuminate/Database/Eloquent/Model.html#method_push

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51640783

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档