J'ai créé une table en utilisant artisan
public function up()
{
Schema::create("log", function (Blueprint $table) {
$table->increments("id");
$table->string("priority");
$table->string("level");
$table->string("content");
$table->timestamps();
});
}
Cela a parfaitement fonctionné, la table existe déjà.
Après cela, j'ai voulu faire un appel API pour obtenir toutes les entrées (aucune n'existe, je sais) via une requête GET le api/v1/log
ce qui entraîne une erreur HTTP 500.
En lumens log (storage/logs/lumen.log
) Je peux trouver ce qui suit:
[2017-06-21 10:20:28] lumen.ERROR: PDOException: SQLSTATE[42S02]: Base table or view not found: 1146 Table "serviceAPI.logs" doesn"t exist in [...]
quelqu'un peut-il me dire pourquoi l'API essaye d'ouvrir logs
au lieu de log
?
METTRE À JOUR: le modèle de journal
namespace App;
use IlluminateDatabaseEloquentModel;
class Log extends Model
{
protected $fillable = ["priority", "level", "content"];
}
?>
Réponses:
1 pour la réponse № 1Le nom de la table de base de données doit être remplacé par log
au lieu de logs
Vous pouvez modifier le nom de la table à partir du modèle de journaux.
protected $table = "log";
protected $primaryKey = "id";