來源:互聯網
上載者:User
關鍵字
laravel5.1
php
php架構
laravel
問題是 下拉式功能表沒有被預設選中
在修改文章內容的介面,存在一個select的下拉式功能表:
(
已經在Form的頭部,綁定了對應的$article 模型)
{!! Form::label('tag_list', 'Tags:') !!} {!! Form::select('tag_list[]', $tags, null, ['class' => 'form-control', 'multiple']) !!}
並且,在Article模型中進行設定擷取器的方法:
public function getTagListAttribute () { return $this->tags->lists('id'); }
在介面中,select的每個option都有正確的value值,但是卻沒有被選中.
然後想再問一下,使用laravel的Form的select,是不是就會自動去對應getTagListAttribute這個方法?? 對應的關係與select標籤的name屬性相關聯?
補充一下:
擷取器在文章列表頁可以得到對應的文章標籤id .
在編輯文章的時候, 文章的其他欄位如(標題,內容) 有對應的內容,模型模型的綁定是沒問題的
回複內容:
問題是 下拉式功能表沒有被預設選中
在修改文章內容的介面,存在一個select的下拉式功能表:
(已經在Form的頭部,綁定了對應的$article 模型)
{!! Form::label('tag_list', 'Tags:') !!} {!! Form::select('tag_list[]', $tags, null, ['class' => 'form-control', 'multiple']) !!}
並且,在Article模型中進行設定擷取器的方法:
public function getTagListAttribute () { return $this->tags->lists('id'); }
在介面中,select的每個option都有正確的value值,但是卻沒有被選中.
然後想再問一下,使用laravel的Form的select,是不是就會自動去對應getTagListAttribute這個方法?? 對應的關係與select標籤的name屬性相關聯?
補充一下:
擷取器在文章列表頁可以得到對應的文章標籤id .
在編輯文章的時候, 文章的其他欄位如(標題,內容) 有對應的內容,模型模型的綁定是沒問題的
你這樣做是可以的,也是單選多選的通用寫法,屬性也是可以一一對應的。
但是你忘了一點,就是from頭也要用From輸出成model形式才可以。
laravel有什麼問題可以和我交流。
奧,你在lists後面再加上->all()方法,主要是這裡需要將collection轉成array
lists在laravel5中取出來的是collection資料結構,加上all之後取出來的是數組!
return $this->tags->lists('id')->all();
已經說的如此詳細了,再解決不了也不說了。
假設你儲存資料的變數叫$data
,那麼select的name要和$data裡面的索引值要對應,也就是說$data
存放tag的索引值叫tag_list
,應該是這樣~
要是索引值是tag_id
,那就要改成{!! Form::select('tag_id[]', $tags, null, ['class' => 'form-control', 'multiple']) !!}
@JellyBool 之前一直學的你的視頻 求助