хранить данные из множественного выбора в сводную таблицу? Laravel - PullRequest
0 голосов
/ 14 марта 2020

Как в заголовке написано, как сохранить из выпадающего меню множественного выбора внутри формы и сохранить несколько данных в сводной таблице (связь между многими таблицами между основными таблицами)?

это форма в представлении я попытался изменить имя = org_select на org_select [], это дает мне массив ошибок в строку.

                              <div class="form-group row">
                                      <label for="org_select" class="col-md-4 col-form-label text-md-right">Select up to 4 orgs</label>

                                      <div class="col-md-6">
                                        <select id="org_select" name="org_select" class="selectpicker" multiple data-max-options="4"data-live-search="true">

                                          @foreach($fName as $name)
                                          <option value="{{$name->org_name}}">{{$name->org_name}}</option>
                                          @endforeach
                                        </select>
                                          @error('org_select')
                                              <span class="invalid-feedback" role="alert">
                                                  <strong>{{ $message }}</strong>
                                              </span>
                                          @enderror
                                      </div>
                                  </div>

это мое другое представление, отображающее всю информацию о созданных пользователем командах. { {$ team-> org_select}} этот элемент отображает только последний выбранный элемент из выпадающего меню.

          <div class="card">
                <div class="card-header"><h2 style="text-align:center;">Your Teams</h2></div>


                <div class="card-body">
                  @foreach ($user->teams as $team)
                  <h3>Team Name</h3>
                  {{$team->team_name}} <br>
                  <h4>Description</h4>
                  {{$team->desc}}<br>
                  <h3>Orgs</h3>
                  {{$team->org_select}}
                  @endforeach



                </div>
            </div>
        </div>

моя команда. php модель

class Team extends Model
{
  protected $fillable = [
      'team_name', 'desc','org_select',
  ];

  protected $table='teams';

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

мой пользователь. php модель

class User extends Authenticatable
{
    use Notifiable;

    /**
     * The attributes that are mass assignable.
     *
     * @var array
     */
    protected $fillable = [
        'org_name', 'email','username', 'password','country','org_type','depart',
    ];

    /**
     * The attributes that should be hidden for arrays.
     *
     * @var array
     */
    protected $hidden = [
        'password', 'remember_token',
    ];

    /**
     * The attributes that should be cast to native types.
     *
     * @var array
     */
    protected $casts = [
        'email_verified_at' => 'datetime',
    ];
    public function teams(){
      return $this->belongsToMany(Team::class,'team_user','users_id','teams_id');
    }


}

мой контроллер viewteam

class ViewTeamController extends Controller
{

      public function index()
      {

        $user = User::find(Auth::id());
        $user = User::with('teams')->find(Auth::id());
        return view('teams.viewteams',compact('user'));



      }



    public function store()
    {

    }

}
  public function store(Request $request)
  {
    $user=auth()->user();
    $team=Team::create($request->all());
    $user->teams()->attach($team);





    return redirect()->route('view');
  }

Если вы можете ответить на общую идею, лежащую в основе концепции хранения данных из мульти в сводную, пожалуйста. Или, если вы можете дать конкретное решение для моего проекта, я был бы очень признателен. Заранее спасибо

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...