/ / Laravel3: Eloquent / Fluent non riesce durante l'istruzione UPDATE - laravel, laravel-3

Laravel3: Eloquent / Fluent fallisce durante l'istruzione 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"

Perché sta succedendo?

risposte:

2 per risposta № 1

Quando si aggiorna un modello Eloquent, verrà utilizzata la chiave primaria del modello, che è la chiave primaria predefinita id, puoi cambiare questo aggiungendo quanto segue nella tua classe:

public static $key = "account_id";

Essere avvertito che ci sono alcuni riferimenti hard-coded a id in Laravel, quindi il miglior consiglio è ancora da usare id come chiave primaria durante la progettazione dei database per Eloquent.

Riferimento: laravel / database / eloquente / model.php