2017-07-07 42 views
2

傢伙,我有這樣的錯誤Ÿ努力,沒有運氣固定(這是錯誤 電話undefined method Illuminate\Database\Query\Builder::encuesta()錯誤試圖從相關模型存儲新對象的形式提交Laravel

只是沒有按規定Integrante, 插入圖片正常工作沒有錯誤

這是我在integrante model

public function integrantes() 
{ 
    return $this->belongsTo(Encuesta::class); 
} 

關係,這是對image model

0圖像關係
public function encuesta() 
    { 
     return $this->belongsTo(Encuesta::class); 
    } 

這是我在encuestas model

public function integrantes() 
{ 
    return $this->hasMany(Integrante::class, 'encuesta_id'); 
} 

關係,我的控制器

public function store(EncuestaRequest $request){ 

    // Image Upload 
    $file = $request->file('image'); 
    $file_count = count($file); 
    $fileupload = 0; 
    $name = 'imagen_' . time() . '.' . $file->getClientOriginalExtension(); 
    $path = public_path() . '/uploads'; 
    $file->move($path, $name); 

    $encuestas = new Encuesta($request->all()); 
    $encuestas->save(); 
    // Saving Integrante 
    $integrantes = new Integrante(); 
    $integrantes->nombres = $request->nombres; 
    $integrantes->curp = $request->curp; 
    $integrantes->parentesco = $request->parentesco; 
    $integrantes->fecha_nacimiento = $request->fecha_nacimiento; 
    $integrantes->genero = $request->genero; 
    $integrantes->estado_nacimiento = $request->estado_nacimiento; 
    $integrantes->encuesta()->associate($encuestas); 
    $integrantes->save(); 

    // Saving Image 
    $image = new Image(); 
    $image->name = $name; 
    $image->encuesta()->associate($encuestas); 
    $image->save(); 


    return redirect('encuesta'); 
} 
+0

你的Image模型看起來是什麼? –

+0

嗨,泰勒,我更新以上:) –

回答

1

更改您的Integrante模型像這樣在這本我的功能作用,

來源:

public function integrantes() 
{ 
    return $this->belongsTo(Encuesta::class); 
} 

要:

public function encuesta() 
{ 
    return $this->belongsTo(Encuesta::class); 
} 

在下面的線,你想叫encuesta()從Integrante模型的方法,但你在模型中使用了錯誤的函數名(integrantes())。所以,這就是爲什麼你得到未定義的方法錯誤。

$integrantes->encuesta()->associate($encuestas); 
+0

非常感謝Rubanraj Ravichandran,現在工作正常 –

相關問題