Ich stehe vor einer schwierigen Angelegenheit. Ich habe einen Code für die Paginierung geschrieben. Alles funktioniert wie erwartet, aber nur die Bedingungen funktionieren nicht (nur bestimmte Bedingungen) Hier ist mein Code für die Seitennummerierung.
%Vor% Dieser Code funktioniert prfect in der Entwicklungsumgebung und gibt Protokolle mit dem Typ 2 zurück, aber in der Produktion gibt er nur Protokolle mit dem Typ 1 zurück. Ich habe den ganzen Tag damit verbracht, das Problem herauszufinden.
Wenn ich eine andere Bedingung in conditions array
hinzufüge, die wirksam wird, aber nicht log_type
.
Ich drucke Abfrageprotokolle, in where clause
es zeigt immer log_type = '1'
Ich habe auch den Cache gelöscht.
Jede Hilfe geschätzt, danke.
Ich habe ein Problem behoben. Dieses Problem wurde von data type
in der Datenbank deklariert. In der Produktion war tinyint(1)
und in der Entwicklung int(1)
. Es speichert den korrekten Wert in der Datenbank in beiden Umgebungen, aber im Zustand tinyint(1)
arbeitet nur mit 0 & amp; 1 nicht mit 2.
Ich habe den Grund dafür nicht verstanden.
Wenn Ihr Code auf dem lokalen Computer funktioniert, aber in der Produktion nicht funktioniert, müssen Sie alle Dateien in tmp/cache/model
und tmp/cahe/persistance
löschen. Stellen Sie sicher, dass Sie dem Ordner tmp
Schreibrechte erteilt haben.
Dies bedeutet, dass Sie das Cake Model-Schema aktualisieren müssen, wenn Sie ein neues Feld hinzufügen, ein bestehendes Feld entfernen oder Änderungen am Datenbankschema vornehmen. Im Produktionsmodus Wenn die Schema-Cachedatei nicht gefunden wird, erstellt sie neue Cachedateien basierend auf dem aktuellen Datenbankschema. Im Entwicklungsmodus wird bei jeder Ausführung der Schema-Cache aktualisiert.
Da es immer noch Probleme mit der Seitennummerierung gibt, müssen Sie die CakePHP 2.x-Dokumentation befolgen. Hier nehme ich an, dass Ihr Code in ApiLogsController
und Methode ist index
. Laut Dokumentation sollte Ihr Code sein.
ODER
%Vor%Tags und Links php cakephp cakephp-2.0 pagination paginator