第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

在數(shù)據(jù)庫表中存儲多個復(fù)選框值 拉拉維爾

在數(shù)據(jù)庫表中存儲多個復(fù)選框值 拉拉維爾

PHP
aluckdog 2022-09-17 21:57:08
到目前為止,我知道我需要將復(fù)選框值存儲在數(shù)組中,如下所示:<input name="thinking_traps[]" type="checkbox" value="1"><input name="thinking_traps[]" type="checkbox" value="2"><input name="thinking_traps[]" type="checkbox" value="3">但是我不確定如何將這些值正確傳遞給控制器并將其添加到遷移表中?是否將每個值作為單獨的列添加到數(shù)據(jù)庫中?在這里,我嘗試添加它們,就像任何其他輸入一樣:public function store(Request $request)    {        $this->validate($request, [            'thought_entry' => 'required'        ]);        $entry = new ThoughtJournal;        $entry->user_id = auth()->user()->id;        $entry['entry_date'] = date('Y-m-d H:i');        $entry->thought_entry = $request->input('thought_entry');        $entry->emotions = $request->input('emotions');        $entry->thinking_traps = $request->input('thinking_traps');        $entry->balanced_thought = $request->input('balanced_thought')        $entry->save();        return redirect('/dashboard');    }public function up()    {        Schema::create('thoughtjournal', function (Blueprint $table) {            $table->increments('entry_id');            $table->integer('user_id');            $table->date('entry_date');            $table->mediumText('thought_entry');            $table->            $table->timestamps();        });    }
查看完整描述

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


如果可行,請告訴我們。


查看完整回答
反對 回復(fù) 2022-09-17
?
慕的地10843

TA貢獻(xiàn)1785條經(jīng)驗 獲得超8個贊

不應(yīng)在數(shù)據(jù)庫中的一行中存儲多個值。應(yīng)單獨存儲它,以便對數(shù)據(jù)進(jìn)行規(guī)范化。


查看完整回答
反對 回復(fù) 2022-09-17
?
Qyouu

TA貢獻(xiàn)1786條經(jīng)驗 獲得超11個贊

發(fā)布值將是一個數(shù)組,即使您選中了一個復(fù)選框。

$thinking_陷阱 = $request->輸入(“thinking_traps”);

$thinking_traps 將是一個數(shù)組 因此請嘗試將數(shù)組值保存在單獨的表中,作為具有外鍵的多行


查看完整回答
反對 回復(fù) 2022-09-17
  • 3 回答
  • 0 關(guān)注
  • 180 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號