dongye9991 2017-07-21 19:13
浏览 196
已采纳

如何将多个模型传递给Laravel View

In my Laravel project, I am trying to display some data from the database. The data is looked up from multiple tables. The structure looks like this:

  • Group ( e.g. name = "G1")

    • Book ( e.g. name = "B1")
    • Pencil (e.g. name = "P1")
    • Ink (e.g. name = "I1")
  • Group (e.g. name = "G2")

    • Book ( e.g. name = "B2")
    • Pencil (e.g. name = "P2")
    • Ink (e.g. name = "I2")

Group, Book, Pencil & Ink are Eloquent/Model classes. I can lookup the data fine (with all the relationship between the tables). Now, I want to send this data to the Laravel view php, so that it can be displayed. At the view php, there will be drop-down element for Group with group name (e.g. "G1" or "G2") displayed, so if the user select "G1", the page should display all the G1 related info (e.g. B1, P1, I1) and for "G1", it's related info. By default (or on page load), first group in the list and its related info should be displayed.

I want to know how should I pack the data (I believe is some array) and use it in view php? And also how to update the view when the selection has changed in the Group dropdown?

Many Thanks!

  • 写回答

4条回答 默认 最新

  • dongxie2613 2017-07-21 19:21
    关注

    In your controller method

    $groupOne = Group::where()->get(); // Your Group One Query, Whatever It May Be
    $groupTwo = Group::where()->get(); // Your Group Two Query, Whatever It May Be
    
    return view('pathTo.someView', compact('groupOne', 'groupOne'));
    

    You will be able to loop through these in your blade temeplate. Ex:

    @foreach( $groupOne as $item ) 
    
    @endforeach
    
    @foreach( $groupTwo as $item ) 
    
    @endforeach
    

    If you want to change the view/content of the page depending on change of a dropdown, you are going to have to use JavaScript for that. Laravel comes with VueJS out of the box. I suggest starting there for dynamically changing content.

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(3条)

报告相同问题?

悬赏问题

  • ¥15 matlab不知道怎么改,求解答!!
  • ¥15 永磁直线电机的电流环pi调不出来
  • ¥15 用stata实现聚类的代码
  • ¥15 请问paddlehub能支持移动端开发吗?在Android studio上该如何部署?
  • ¥20 docker里部署springboot项目,访问不到扬声器
  • ¥15 netty整合springboot之后自动重连失效
  • ¥15 悬赏!微信开发者工具报错,求帮改
  • ¥20 wireshark抓不到vlan
  • ¥20 关于#stm32#的问题:需要指导自动酸碱滴定仪的原理图程序代码及仿真
  • ¥20 设计一款异域新娘的视频相亲软件需要哪些技术支持