01/10/2018, 11:16

Lỗi SQLSTATE[42S02]: Base table or view not found: 1146

Mọi người cho e hỏi tại sao update lại không tìm đc bảng ‘tbcategory’ trong khi thêm mới thì vẫn thêm đc
Controller function:
> public function editItem(Request $request, $id){

                $category = Category::find($id);
                $this->validate($request,
                    [
                        'txt_CateName' => 'unique: tbcategory,cateName'
                    ],
                    [
                        'txt_CateName.unique' =>'Tên Category đã tồn tại',
                    ]
                );
            $category->cateName = $request->txt_CateName;
            $category->cateNameKD = changeTitle($request->txt_CateName);
            echo $category->cateName ."------".$category->cateNameKD;
            $category->save();
           // return redirect('admin/catelist')->with('message','Sửa thành công');
        }

Model:
> class Category extends Model

        {
            //
            protected $table = 'tbcategory';
        public function subcategory(){
            return $this->hasMany('AppSubCategory','cateID','ID');
        }
        public function news(){
            return $this->hasManyThrough('AppNews','AppSubCategory','cateID','subcateID','ID');
        }
    }
Mason Ha viết 13:21 ngày 01/10/2018

Ban thử chạy lại php artisan migrate xem.

ATuan viết 13:27 ngày 01/10/2018

“nothing to migrate” r ạ

Ice Tea viết 13:29 ngày 01/10/2018

'unique: tbcategory

Thừa dấu cách này bạn

ATuan viết 13:21 ngày 01/10/2018

Thừa dấu cách này bạn

ui đúng r ạ.
cho e hỏi là tại sao cái hàm save() của e nó ko lưu lại tên đã sửa ạ??
e echo nó ra thì thấy đổi r, mà trong csdl ko đổi đc ạ

Ice Tea viết 13:28 ngày 01/10/2018

$category->save();

Bạn dump cái này xem nó true hay false. Try catch xem nó có lỗi gì không

ATuan viết 13:32 ngày 01/10/2018

e tìm ra lỗi r ạ. Tại cột ID trong datbase e đặt là ID (viết hoa) nên ko đc.
e thắc mắc là tại sao cột id (viết thường) thì laravel nó mới hiểu đc ạ?

Ice Tea viết 13:20 ngày 01/10/2018

Mặc định theo convention thì là viết thường. Nếu viết khác thì bạn phải khai báo lại trong Model
https://laravel.com/docs/5.4/eloquent#eloquent-model-conventions

Bài liên quan
0