douzen1896 2016-08-08 14:42
浏览 21

Laravel 5.2中的方法组不存在错误

I am working on laravel 5.2.I want to display those members who belongs to that particular group which is open at this time. Actually, i am getting all the members which i have stored in my database but, i only want to access or display only those members who belongs to a particular on which i am currently accessing. I am getting an error: Method groups does not exist. which is shown below: enter image description here enter image description here

My controller:

    public function members($id){
    $dashes=Grouptable::findorFail($id);
    $members=Member::all();
    return view('members' , ['dashes'=>$dashes,'members'=>$members]);

     }

    public function dashboard($id){
    $dashes=Grouptable::findorFail($id);
    return view('dashboard' , ['dashes'=>$dashes]);

    }
    public function addmembers(Request $request){
    $member=new Member();
    $member->members=$request['addmember'];
    $request->groups()->members()->save($member);

    return redirect()->back();
    }

My view:

    <body>
    <div class="row">
    <div class="col-lg-3 col-lg-offset-1">
    <img src="images/ImgResponsive_Placeholder.png" 
    class="img-circle img-  responsive" alt="Placeholder image"> </div>
    <div class="col-lg-7">
    <h1 style="color:black;">{{ $dashes->name }}</h1></div>
    <br />
    </div>
    <div class="row">

   <div class="col-lg-3">

   <button class="btn btn-success"  onclick="myFunction()">
   Add Members +   </button>
    <div>

   <form id="demo" style="display:none;" method="post"
   action="{{ route('addmember') }}">
    <input class="form-control" type="text" name="addmember">
    <button class="btn btn-primary" type="submit">Add</button>
    <input type="hidden" name="_token" value="{{ Session::token() }}">
    </form>

    </div>
     </div>

     <div class="col-lg-7 col-lg-offset-0">
     <div class="panel panel-default">
     <div  id="grp" class="panel-heading">
     <h3 id="grouptitle" class="panel-title">Group Members</h3>
     </div>
     <div  id="zx" class="panel-content">
     <div class="row">
        @foreach($members as $member)
        <section class="col-md-6">

         <div class="row">

        <section class="col-md-offset-1 col-md-3 col-xs-offset-1 col-xs-4">
       <img id="imagesize" src="images/g.jpg" class="img-circle"/>
       </section>
        <section class="col-md-offset-1 col-md-7 col-xs-7">
          <section class="col-md-12">

            <h5 id="friendname">{{$member->members}}</h5>

          </section>
          <section class="col-md-12">
            <button type="button" class="btn btn-sm btn-
            default">Score</button>
             </section>
              </section>
               </div>

               <div class="row">
               <section class="col-md-offset-9 col-md-3 col-xs-offset-6 
            col-xs-4">
            <div class="btn-group">
            <button id="btnclr1" type="button" class="btn btn-block
             btn-warning dropdown-toggle" data-toggle="dropdown" aria-
           expanded="false"><span class="caret"></span></button>
            <ul id="bckdrp" class="dropdown-menu" role="menu">
              <li role="presentation"><a id="drpmenu" href="#">Remove</a>
              </li>
            </ul>
          </div>
            </section>
             </div>
             <div class="row">
             <section class="col-md-offset-1 col-md-10">
          <hr>
           </section>
           </section>
            @endforeach

             </div>
              <div id="mn" class="panel-footer"><a id="seemr1"
              href="#.html">See More</a></div>
               </div>
                </div>
              </div>
                </div>
             </div>
             </div>
                </div>
             </body>

My routes:

         Route::get('/members/{id}',[
        'uses'=>'GroupController@members',
          'as'=>'members'
           ]);
           Route::get('/dashboard/{id}',[
          'uses'=>'GroupController@dashboard',
          'as'=>'dashboard'
          ]);
           Route::post('/memeber/add',[
           'uses'=>'GroupController@addmembers',
          'as'=>'addmember'
           ]);

My modals:

        Grouptable:
        public function members(){
        return $this->hasMany('App\Member');
          }

        Member:

         public function groups(){
    return $this->belongsTo('App\Grouptable');
            }
  • 写回答

1条回答 默认 最新

  • doutuoshou8915 2016-08-08 23:40
    关注

    I do not quite understand the entire problem, but

    public function addmembers(Request $request){
        $member=new Member();
        $member->members=$request['addmember'];
        $request->groups()->members()->save($member);
    
        return redirect()->back();
    }
    

    should look more like

    public function addmembers(Request $request){
        $member=new Member();
        $member->propertyX = $request->get('propertyX');
        $member->propertyY = $request->get('propertyY');
        $member->groups()->attach($group); // FOR MANY-TO-MANY (N-N) RELATION
        $member->groups()->associate($group); // FOR ONE-TO-MANY (1-N) RELATION
        $member->save();
    
        return redirect()->back();
    }
    

    Depending on your migrations you should choose attach() or associate()

    评论

报告相同问题?

悬赏问题

  • ¥100 set_link_state
  • ¥15 虚幻5 UE美术毛发渲染
  • ¥15 CVRP 图论 物流运输优化
  • ¥15 Tableau online 嵌入ppt失败
  • ¥100 支付宝网页转账系统不识别账号
  • ¥15 基于单片机的靶位控制系统
  • ¥15 真我手机蓝牙传输进度消息被关闭了,怎么打开?(关键词-消息通知)
  • ¥15 装 pytorch 的时候出了好多问题,遇到这种情况怎么处理?
  • ¥20 IOS游览器某宝手机网页版自动立即购买JavaScript脚本
  • ¥15 手机接入宽带网线,如何释放宽带全部速度