/ / Laravel3: Eloquente / Fluente falha durante a instrução UPDATE - laravel, laravel-3

Laravel3: Eloquente / Fluente falha durante a instrução UPDATE - laravel, laravel-3

$account = Account::where("account_id", "=", $account_id)->first();
$account->username = "New_Username";
$account->password = "Password";
$account->save();

SQLSTATE[42S22]: Column not found: 1054 Unknown column "id" in "where clause"

Por que isso está acontecendo?

Respostas:

2 para resposta № 1

Quando você atualiza um modelo Eloquent, ele usa a chave primária do modelo. A chave primária padrão é id, você pode alterar isso adicionando o seguinte na sua turma:

public static $key = "account_id";

Esteja avisado que existem algumas referências codificadas para id no Laravel, então o melhor conselho ainda é usar id como uma chave primária ao projetar seus bancos de dados para o Eloquent.

Referência: laravel / database / eloquent / model.php