Tôi có một mẫu Foo tương ứng với một bảng có các cột sau đây.Laravel Eloquent bỏ qua thuộc tính nếu không có trong bảng trong khi chèn
id
mô tả
user_id
Tôi đang thiết lập các thuộc tính của mô hình Foo cá nhân (không phân khối)
$foo = new Foo;
$foo->id = 1;
$foo->description = "hello kitty";
$foo->user_id = 55;
//...
$ foo được gửi đến một lớp học cho xử lý bổ sung, nhưng bởi vì lớp đó cần nhiều thông tin hơn, tôi chỉ muốn thêm nó vào mô hình $ foo.
//...
$foo->bar = $additional_information;
Event::fire(DoStuffWithFoo($foo));
$foo->save(); //error
vấn đề là khi tôi $foo->save()
, khiếu nại là bar
không phải là một cột.
Tôi biết tôi có thể unset($foo->bar);
trước khi lưu, nhưng ...
Có thể nói hùng hồn cho chỉ đơn giản là bỏ qua bất kỳ thuộc tính không phù hợp?
Tôi nghĩ biến $ fillable của Eloquent có thể giúp bạn thích tại đây: http://stackoverflow.com/questions/20620364/can-eloquent-ignore-irrelevant-data-in-laravel-4 –
Tôi thấy rằng, nhưng tôi nghĩ $ fillable chỉ dành cho nhiệm vụ đại chúng. Mà đoán tôi chỉ có thể tạo ra một mảng và vượt qua mà thay vì gán mỗi thuộc tính riêng ... '$ foo = new Foo ($ array);' – dangel