2016-04-04 11 views
1

製品を更新すると、データは更新されません。Laravel 5保存と更新が機能しません。

フォローコード

私が使用している場合は私のコントローラ

public function viewProduct($name, $id) 
{ 

    $product = $this->queryProducts() 
        ->where('produtos.id' , $id) 
        ->first(); 

    $product->count_view += 1; 
    $product->save(); 
}  

マイモデル

<?php 
namespace App;  
use Illuminate\Database\Eloquent\Model; 

class Products extends Model 
{ 

protected $guarded = ['id']; 
protected $table = 'produtos'; 
const CREATED_AT = 'created'; 
const UPDATED_AT = 'modified'; 
protected $fillable = ['count_view', 'nome']; 

dd($product->save()) 

私のリターンが真であると私は()他の方法から

$product->save(['count_view' => 77 ]) 

および/または

$product->update(['count_view' => 77 ]) 

saveメソッドを使用してみました。しかし方法が私は私のミスを発見し

答えて

0

機能しません。 ..

製品を検索するためにクエリを作成したとき、私は別のテーブルと結合しました。このため、彼はupdatではありませんでしたing。

質問を解決するために、私は製品テーブルのみを選択して保存して更新するように言いました。

private function queryProducts() 
{ 
    return Products::join('fornecedores', 'fornecedores.id', '=' ,'produtos.fornecedor_id') 
         ->where('fornecedores.ativo', 1) 
         ->where('produtos.moderacao', 'P') 
         ->where('produtos.ativo' , 1) 
         ->select('produtos.*')       
         ->limit($this->_limitProducts); 
} 
関連する問題