2013-03-08 3 views
1

Я создал приложение на пакете XAMPP в Windows 8. Он отлично работает.Странное поведение с соглашениями CakePHP (2.3.1.) На разных серверах

Теперь, когда я загрузил его на сервер (Linux), есть некоторые проблемы.

Предположим, что «ClientStatus».

Controller name: "ClientStatuses". 
File name: "ClientStatusesController.php". 
Plural: "ClientStatuses". 
Singular: "ClientStatus". 

Но на сервере Linux, он говорит, что я должен иметь "ClientstatusesController.php". Почему это? Что мне нужно изменить в конфигурации, чтобы соглашения были одинаковыми на сервере XAMPP и Linux? Это что-то в .htaccess?

Любая информация будет большой. Спасибо. :)

Это CakePHP 2.3.1.

ответ

0

Оказывается, что "* Никс" являются с учетом папок с именами папок. Он должен быть ClientstatusesController.php.

Хорошо, здесь я хочу сказать вам еще одну вещь, которую я решил, когда я загрузил проект на сервере.

Для преобразования массива JavaScript в JSON я использовал JSON.stringify(), а сервер json_decode() всегда возвращал «null» при обратном преобразовании.

Я думаю, что это из-за трех символов спецификации. Это решило проблему.

$table = json_decode(stripslashes($_REQUEST['table']), true); 
0

В конвенции всегда был "во множественном числе" для контроллеров, поэтому есть только один правильный имя:

ClientstatusesController 

см http://book.cakephp.org/2.0/en/getting-started/cakephp-conventions.html

или попробовать http://inflector.cakephp.org/clientstatus

+0

"ClientStatuses" также является множественным. Разница только в «S». И почему это работает на XAMPP, а не на Linux? Вот в чем вопрос. :) – 2013-03-09 00:17:51

+0

это пункт. но вы сказали «Имя контроллера:« ClientStatus », что неверно. – mark

+0

О, извините. Я имел в виду «ClientStatuses». Спасибо. – 2013-03-09 00:19:28

 Смежные вопросы

  • Нет связанных вопросов^_^