Как вставить данные в 2 таблицы из формы множественного выбора - PullRequest
0 голосов
/ 05 ноября 2018

Я хотел бы вставить данные из этой формы в таблицу: project и table: projects_departments

Это моя форма enter image description here

Таблица: отделы enter image description here

таблица: проекты_департаменты enter image description here

Таблица: проекты enter image description here

Моя форма

 {!! Form::open(['route' => 'project.store']) !!}
     {{ csrf_field() }}
           <div class="row" name="add_name" id="add_name">
                 <div class="col-md-12" >
                     <div class="form-group department-select-container">            
                       {!! Form::label('departments_id', 'Department Name :'); !!}
           <?= Form::select('departments_id', App\Department::all()->pluck('department_name', 'id'), null, [
                                'class' => 'form-control', 'placeholder' => '-- Please Select --']); ?>

       <a href="#" class="btn btn-sm btn-info btn-add-more-department" onclick="createNew()">ADD</a>
                             <div id="mydiv"></div>
                        </div>
                    </div>
                </div>

ProjectController магазин функций

public function store(Request $request)
{
    $this->validate($request, [
        'departments_id'    => 'required',

        'years_id'          => 'required',
        'strategys_id'      => 'required',
        'objectives_id'     => 'required',
        'tactics_id'        => 'required',
        'projects_name'     => 'required',
        'target_group'      => 'required',
        'kpis_id'           => 'required',
        'kpiunits_id'       => 'required',
        'level_1'           => 'required',
        'level_2'           => 'required',
        'level_3'           => 'required',
        'level_4'           => 'required',
        'level_5'           => 'required',
        'level_1_detail'    => 'required',
        'level_2_detail'    => 'required',
        'level_3_detail'    => 'required',
        'level_4_detail'    => 'required',
        'level_5_detail'    => 'required',
    ]);


 Project::create($request->all());
    return redirect()->route('project.index')->with('success','recorded successfully');
}

Это модель: проект

protected $table = 'projects';
protected $fillable = [
    'departments_id', 
    'years_id', 
    'strategys_id', 
    'objectives_id',
    'tactics_id',
    'projects_name',
    'target_group',
    'kpis_id',
    'kpiunits_id',
    'level_1',
    'level_2',
    'level_3',
    'level_4',
    'level_5',
    'level_1_detail',
    'level_2_detail',
    'level_3_detail',
    'level_4_detail',
    'level_5_detail',
    ];

public function years() {
    return $this->hasOne('App\Year', 'id', 'years_id');
}

public function strategys() {
    return $this->hasOne('App\Strategy', 'id', 'strategys_id');
}

public function objectives() {
    return $this->hasOne('App\Objective', 'id', 'objectives_id');
}
public function departments() {
    return $this->hasOne('App\Department', 'id', 'departments_id');
}

public function tactics() {
    return $this->hasOne('App\Tactic', 'id', 'tactics_id');
}

public function kpis() {
    return $this->hasOne('App\Kpi', 'id', 'kpis_id');
}
public function kpiunits() {
    return $this->hasOne('App\Kpiunit', 'id', 'kpiunits_id');
}



public function projects_departments() {
    return $this->belongsTo(Project_department::class, 'departments_id'); 
}

Это модель: Project_department

 protected $table = 'projects_departments';
 protected $fillable = [
    'projects_id', 
    'departments_id', 
    ];

public function projects()
{
    return $this->belongsToMany('App\Project');
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...