показать опцию выбора данных пользователем в laravel - PullRequest
0 голосов
/ 08 октября 2018

Я хочу показать данные проекта в опциях выбора, назначив логин пользователя.

эта опция выбора моей формы

<div class="form-group">          
  <label for="">Project *</label>        
    <select class="form-control select2" style="width: 100%;" name="project_id">
      <option value="project_id" selected>Select One</option>
         @foreach($projects as $id => $project)
           <option value="{{$id}}">{{$project}}</option>
         @endforeach
    </select>
</div>

это мой контроллер для ввода имени проекта назначенным пользователем

$projects = UserProjects::pluck('project_id', 'user_id');

и я использую Many To Many Relation.

в моей пользовательской модели

public function projects()
    {
        return $this->belongsToMany(Project::Class, 'user_projects');
    }

в моей модели Project

public function users()
{
    return $this->belongsToMany(User::class, 'user_projects');
}

и в моей сводной таблице user_projects это просто project_id и user_id.что я должен написать в моей опции выбора в форме .?

1 Ответ

0 голосов
/ 08 октября 2018

В many to many relation вам не нужно определять модель для промежуточной таблицы (user_projects).

Контроллер

$user_projects = auth()->user()->projects;

Просмотр

<div class="form-group">          
  <label for="">Project *</label>        
    <select class="form-control select2" style="width: 100%;" name="project_id">
      <option value="project_id" selected>Select One</option>

      @foreach($user_projects as $user_project)
           <option value="{{$user_project->id}}">{{$user_project->name}}</option>
      @endforeach

    </select>
</div>
...