Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [laravel] problem z modelem
Forum PHP.pl > Forum > PHP > Frameworki
kr27
$model = new ConfigurationDashboard;
$model->create(Request::all());

i w wyniku tego mam błąd:

QueryException in Connection.php line 620: SQLSTATE[42601]: Syntax error: 7 BŁĄD: błąd składni w lub blisko ")"
LINE 1: insert into "us_panel_startowy" () values () returning "id_p...
^ (SQL: insert into "us_panel_startowy" () values () returning "id_panel_startowy")

Dlaczego Laravel nie widzi pól dla SQL'a pomimo tego, że podałem w modelu tablicę $fillable.

Miał ktoś podobny problem?
Pyton_000
bo Request::all() jest puste?

  1. dd(\Request::all());
kr27
Request::all() zawiera dane. Gdyby nawet było puste to powinien utworzyć rekord z NULL-ami (tak mi się wydaje).
Używam bazy PostgreSql.
Pyton_000
Pokaż model i jesteś na 100% pewny że Request::all() zwraca dane?
kr27
Już wiem o co chodzi.
Wszystko przez:

  1. public function __construct(array $parameters = null)
  2. {
  3. }


Jak wywale konstruktor to działa.
Nie pomaga też odpalenie parent::__construct();

Rozwiązanie problemu dla potomnych:

  1. public function __construct(array $parameters = null)
  2. {
  3. $this->fill($parameters);
  4. }



Parę godzin w plecy:)
Pyton_000
A możesz powiedzieć po kiego wałka Ci konstruktor w modelu?
kr27
Po to, że przekazuje tam dodatkowe zmienne (w przykładzie je usunąłem) podczas inicjacji z kontrolera.
Pyton_000
To do takich rzeczy używa się Repositories które tworzą model, ustawiają co tam chcesz i ew. zwracają Ci model.
Sam model nie powinien mieć takich udziwnień.
kr27
Dziękuję za informacje. Zapewne w moim projekcie mam masę rzeczy, które powinny być zrobione inaczej.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.