php - Laravel relations where the relation brings the correct users data -


so tried setting of inhouse sports page forum users can enter think win game , after result has come in awarded points if correct.

while doing ran issue. far have games in database , created results relation. problem when user viewing games on said date (several events) relation doesn't know 1 belongs said user. tried couple of hours drawing blank. take @ this:

route:

route::get('/event/{date}/list', 'other\othercontroller@indexdategames'); 

controller:

public function indexdategames($date) {     $datetoday = (new \datetime())->format('y-m-d h:i:s');      $events = event::where('date', $date)->get();     $uid = auth::user()->id;       $vars['uid'] = $uid;     $vars['date'] = $date;     $vars['datetoday'] = $datetoday;     $vars['events'] = $events;      if ($date >= $datetoday) {         $vars['url'] = 'eventsupcoming';     } else {         $vars['url'] = 'eventspassed';     }      return view('other.event_on_date', $vars); } 

model result :

    public function event() {     return $this->belongsto(event::class); } 

model event :

        public function result() {     return $this->hasone(result::class); } 

view:

<div class="row">     <div class="col-lg-6">         <div id="spinner" style="margin-top:200px;margin-left:47%;">             <i class="fa fa-spinner fa-spin fa-5x fa-fw"></i>         </div>         <div id="data" style="display:none;margin:10px;">             <table id="example" class="display" cellspacing="0" width="100%">                 <thead>                 <tr>                     <th>tid</th>                     <th>resultat</th>                     <th>ditt val</th>                 </tr>                 </thead>                 <tfoot>                 <tr>                     <th>tid</th>                     <th>resultat</th>                     <th>ditt val</th>                 </tr>                 </tfoot>                 <tbody>                 @foreach($events $event)                          @if ('2017-09-16 16:00:00' < $event->start)                             <tr>                                 <td>{{$event->start->format('h:i')}}</td>                                     <td>                                         @if (isset($event->result->result))                                             @if ($event->result->result == 1)                                                 <a href="#" class="btn btn-success btn-xs" role="button" aria-pressed="true">{{$event->home}}</a>                                                 <a href="{{ url::to('/event/' . $event->id . '/changeresult/2/' . $uid) }}" class="btn btn-default btn-xs" role="button" aria-pressed="true">x</a>                                                 <a href="{{ url::to('/event/' . $event->id . '/changeresult/3/' . $uid) }}" class="btn btn-default btn-xs" role="button" aria-pressed="true">{{$event->away}}</a>                                             @elseif ($event->result->result == 2)                                                 <a href="{{ url::to('/event/' . $event->id . '/changeresult/1/' . $uid) }}" class="btn btn-default btn-xs" role="button" aria-pressed="true">{{$event->home}}</a>                                                 <a href="{{ url::to('#') }}" class="btn btn-success btn-xs" role="button" aria-pressed="true">x</a>                                                 <a href="{{ url::to('/event/' . $event->id . '/changeresult/3/' . $uid) }}" class="btn btn-default btn-xs" role="button" aria-pressed="true">{{$event->away}}</a>                                             @elseif ($event->result->result == 3)                                                 <a href="{{ url::to('/event/' . $event->id . '/changeresult/1/' . $uid) }}" class="btn btn-default btn-xs" role="button" aria-pressed="true">{{$event->home}}</a>                                                 <a href="{{ url::to('/event/' . $event->id . '/changeresult/2/' . $uid) }}" class="btn btn-default btn-xs" role="button" aria-pressed="true">x</a>                                                 <a href="{{ url::to('#') }}" class="btn btn-success btn-xs" role="button" aria-pressed="true">{{$event->away}}</a>                                             @endif                                         @else                                             <a href="{{ url::to('/event/' . $event->id . '/result/1/' . $uid) }}" class="btn btn-default btn-xs" role="button" aria-pressed="true">{{$event->home}}</a>                                             <a href="{{ url::to('/event/' . $event->id . '/result/2/' . $uid) }}" class="btn btn-default btn-xs" role="button" aria-pressed="true">x</a>                                             <a href="{{ url::to('/event/' . $event->id . '/result/3/' . $uid) }}" class="btn btn-default btn-xs" role="button" aria-pressed="true">{{$event->away}}</a>                                         @endif                                     </td>                          @elseif (isset($event->final_result))                             <tr>                                 <td>{{$event->start->format('h:i')}}</td>                                 <td>                                     @if ($event->final_result == 1)                                         <a href="{{ url::to('#') }}" class="btn btn-success btn-xs" role="button" aria-pressed="true">{{$event->home}} vann matchen över {{$event->away}}</a>                                     @elseif ($event->final_result == 2)                                         <a href="{{ url::to('#') }}" class="btn btn-success btn-xs" role="button" aria-pressed="true">matchen slutade lika mellan {{$event->home}} och {{$event->away}}</a>                                     @elseif ($event->final_result == 3)                                         <a href="{{ url::to('#') }}" class="btn btn-success btn-xs" role="button" aria-pressed="true">{{$event->away}} vann matchen över {{$event->home}}</a>                                     @endif                                 </td>                          @else                             <tr>                                 <td>{{$event->start->format('h:i')}}</td>                                 <td>                                     <a href="{{ url::to('#') }}" class="btn btn-danger btn-xs" role="button" aria-pressed="true">matchen låst - resultat ej fastställt</a>                                 </td>                          @endif                         @if (isset($event->result->result))                             <td>                                 @if ($event->result->result == 1)                                     <a href="{{ url::to('#') }}" class="btn btn-success btn-xs" role="button" aria-pressed="true">{{$event->home}}</a>                                 @elseif ($event->result->result == 2)                                     <a href="{{ url::to('#') }}" class="btn btn-success btn-xs" role="button" aria-pressed="true">lika</a>                                 @elseif ($event->result->result == 3)                                     <a href="{{ url::to('#') }}" class="btn btn-success btn-xs" role="button" aria-pressed="true">{{$event->away}}</a>                                 @endif                             </td>                         </tr>                         @else                             <td>                                 <a href="{{ url::to('#' . $event->id . '/result/1') }}" class="btn btn-default btn-xs" role="button" aria-pressed="true">inget val gjort</a>                             </td>                         </tr>                         @endif                   @endforeach                 </tbody>             </table>         </div>     </div> </div> 

does know how make relation knows "$event->result" result? know doesnt work, example:

$event->result(whereuserid($uid)->result 

in case event should have many results

public function results() {     return $this->hasmany(result::class); } 

for query :

$events = event::with(['results' => function ($query) {                     $query->where('user_id', '=', auth::user()->id);                 }])                 ->where('date', $date)                 ->get(); 

Comments

Popular posts from this blog

javascript - Create a stacked percentage column -

Optimising Firebase database by automatically overwriting data -

javascript - Angular UI-Grid customTemplate directive causing rows to load slowly/? -