Как вызвать две модели в одной функции, используя Laravel? - PullRequest
0 голосов
/ 11 февраля 2020

У меня есть две функции в моем контроллере, я хотел бы назвать модель Tbl_Perimetro и Tbl_Holding, я достиг вызова Tbl_Perimetro .. но я не знаю, как вызвать Tbl_Holding для работы таким же образом, как Tbl_Perimetro

это мои функции

public function edit($id)
{
    if(request()->ajax())
    {
        $data = Tbl_Perimetro::findOrFail($id);
        return response()->json(['result' => $data]);

    }
}


public function update(Request $request, Tbl_Perimetro $user)
{
    $rules = array(
        'rif'      =>  'required',
        'razon_social'  =>  'required',
        'holdings_id' => 'required',
        'pines_id' => 'required'

    );


    $error = Validator::make($request->all(), $rules);

    if($error->fails())
    {
        return response()->json(['errors' => $error->errors()->all()]);
    }

    $form_data = array(
        'rif'        =>  $request->rif,
        'razon_social'    =>  $request->razon_social,
        'holdings_id' => $request->holdings_id,
        'pines_id' => $request->pines_id

    );

    Tbl_Perimetro::whereId($request->hidden_id)->update($form_data);

    return response()->json(['success' => 'Datos actualizados satisfactoriamente.']);

}

Ответы [ 2 ]

0 голосов
/ 11 февраля 2020

Делай так:

$data1=tbl_Perimerto::findorfail($id1);

$data2=tbl_Holding::findorfail($id2); return reponse()->json( ['result1'=>$data1,'result2'=>$data2]);

Но что такое $id1 и $id2? Они были переданы из маршрутизации:

route::get('/yoururl/{id1}/{id2},['uses'=>'YourController@method']);

и в вашем методе контроллеров вы должны получить их в качестве аргумента следующим образом:

public function method($id1,$id2)

0 голосов
/ 11 февраля 2020

Вам не нужно использовать Tbl_Perimetro $user в аргументе update() функции.

Вместо этого включите Модели в начале вашего контроллера:

use App\Tbl_Perimetro;
use App\Tbl_Holding;

И затем Вы можете использовать эти модели в любом месте этого контроллера:

Tbl_Perimetro::whereId($request->hidden_id)->update($form_data);
Tbl_Holding::whereId($request->hidden_id)->update($form_data);

Надеюсь, это поможет.

...