doulai1910 2017-04-09 12:54
浏览 35
已采纳

Laravel Many To Many透视表具有多个选择

Hey everyone I have a question. Let's say I have a blog and I want to create a new article and assign it to multiple tags using multiple select inside the form. Models and DB tables are already set up.

So something like this:

<select multiple name="tags">
<option value="{{ some tag_id }}">some tag</option>
<option value="{{ other tag_id }}">other tag</option>
</select>

But then how do I handle it in controller I know that I can do something like this:

$article = new Article;
$article -> tags() -> attach(tag_id)

But how can I apply this with the multiple select?

  • 写回答

1条回答 默认 最新

  • duanba4942 2017-04-09 13:03
    关注
    <select multiple name="tags[]">
    
    </select>
    

    By adding [ ] to your element name, it will return an array. Then you just need to loop through it with a foreach and attach each tag.

    Something like this:

    $article = new Article;
    
    foreach (request('tags') as $tag) {
        $article -> tags() -> attach($tag)
    }
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?