Wenn CakePHP einen Eintrag nicht speichern will (oder auch: Hilfe, patchEntity funktioniert nicht)

(Copyright des Bildes siehe Credits)

Gestern Abend habe ich etwas an einem Code herumgespielt. Ich habe ein neues Model erstellt - natürlich mit Table und Entity Datei. Als ich dann aber Daten in der Datenbank verändern bzw. updaten wollte, funktioniert es nicht. Die Suche hat mich verrückt werden lassen.

Das Problem war, das patchEntity keine Veränderung herbeifühte:

<?php
var_dump($data); 
$DataTable->patchEntity($data, ['active' => 2]);
var_dump($data);

erzeugte folgende Ausgabe:

object(Cake\ORM\Entity)[365]  
  public 'user_role_name' => string 'ADMIN' (length=5)
  public 'active' => int 1

object(Cake\ORM\Entity)[365]  
  public 'user_role_name' => string 'ADMIN' (length=5)
  public 'active' => int 1

Dabei war der Fehler so lächerlich simpel: Ich habe einfach aus alter Gewohnheit im Plural gearbeitet.

CakePHP DebugKit lässt sich nicht aktivieren

Ich hatte gestern das Problem, dass sich die aktuelle Version (3.6) des Debug Kits nicht aktivieren lies. Ein Blick in die Logfiles zeigt mir den Grund:

2018-06-16 18:07:56 Warning: DebugKit is disabling itself as your host project.loc is not in the known safe list of top-level-domains (localhost, dev, invalid, test, example, local). If you would like to force DebugKit on use the DebugKit.forceEnable Configure option.