3 回答

TA貢獻(xiàn)1810條經(jīng)驗 獲得超4個贊
我在您的表遷移文件中沒有看到thinking_traps
型
class ThoughtJournal{
// Add it's type to casts as array
public $casts = ['thinking_traps'=> 'array'];
// Add it to fillables if you haven't
public $fillable = ['thinking_traps',...];
//...
}
存儲
其次,在您的存儲方法中,當(dāng)復(fù)選框中沒有選擇任何項目時,您需要將其設(shè)置為數(shù)組,如下所示
...
$entry->thinking_traps = $request->has('thinking_traps')
? $request->get('thinking_traps')
: [];
作為預(yù)防措施,對于驗證,您可以像這樣進(jìn)行驗證:
$this->validate($request, [
'thinking_traps' => 'nullable|in:1,2,3' // your values
]);
遷移
對于遷移,我沒有看到您在那里設(shè)置了列,您可以像這樣修改遷移文件:
// You can have it as json
$table->json('thinking_traps')->nullable();
// or string
$table->string('thinking_traps')->nullable();
或者,如果您不想在 shell/cmd 中重新創(chuàng)建表,則可以創(chuàng)建一個單獨的遷移文件,如下所示:artisan
php artisan make:migration add_thinking_traps_to_thoughtjournal_table --table=thoughtjournal
此命令將單獨添加一個遷移文件,并像往常一樣添加該列,然后您可以添加該列。php artisan migrate
如果可行,請告訴我們。

TA貢獻(xiàn)1785條經(jīng)驗 獲得超8個贊
不應(yīng)在數(shù)據(jù)庫中的一行中存儲多個值。應(yīng)單獨存儲它,以便對數(shù)據(jù)進(jìn)行規(guī)范化。

TA貢獻(xiàn)1786條經(jīng)驗 獲得超11個贊
發(fā)布值將是一個數(shù)組,即使您選中了一個復(fù)選框。
$thinking_陷阱 = $request->輸入(“thinking_traps”);
$thinking_traps 將是一個數(shù)組 因此請嘗試將數(shù)組值保存在單獨的表中,作為具有外鍵的多行
- 3 回答
- 0 關(guān)注
- 180 瀏覽
添加回答
舉報