2015-09-18 3 views
0

Итак, школа предоставила мне этот домен, который включает в себя довольно много программных возможностей, включая symfony, я решил попробовать и получить мой сайт, сделанный в symfony там, но Я не могу заставить маршрутизацию работать, так как она только показывает мне сообщение о том, что symfony был успешно установлен, у меня не хватало опций, я не много пробовал, так как я не очень много знаю о это, следовательно, вопрос здесь.Symfony показывает только «symfony был установлен» на удаленном сервере

TL: DR Symfony показывает только «установленный» на удаленном сервере (размещен Neostrada). Я надеюсь, что кто-то здесь может мне помочь.

EDIT: вот скриншот сообщения:

symfony message

+0

Можете ли вы поставить снимок экрана о том, что отображается. Это другой сценарий, если вы видите «нормальный» Symfony «Великий, вы установили меня» индексный экран или какое-то пользовательское сообщение хоста. Я мог бы попытаться проинформировать вас о том, как все это делается после маршрутизации. – NemanjaT

+0

@NemanjaT Я добавил скриншот, который вы просили, я надеюсь, что вы можете пройти меня через это – Simplicity

ответ

1

Во-первых, я выложу эту ссылку here... прочитал записку в конце ответа первого

Сейчас. Я не знаю, знаете ли вы, что такое MVC, но в скором времени это структура, называемая Model-View-Controller, где пользователь сначала контактирует с контроллером, в symfony также называется Action, который выбирает подходящую функцию действия, geatheres Models (через обмениваясь информацией с базой данных и всей этой магией), а затем отправляет весь пакет в представление (в symfony, созданном в шаблоне Twig templating).

Структура файла производится следующим образом:

app //contains main server files 
- cache //contains production and dev files, you won't pay much attention to this. 
- config //This is where you find the routing.yml, paremeters.yml and other config files 
- logs //git logs and other goodies 
- Resources //This is where your views are found 
bin //Doctrine and goodies, don't pay much attention here for now... 
src //This is where the bundles (controllers) are found 
- AppBundle //You should get this bundle by default 
    - Controller //This is where you put your controllers - they have to have a Controller.php sufix (UserController.php) 
    - Models, Enteties and other folders you want to put in //All custom folders 
- YourCustomBundle (note that both are ending with Bundle) 
web //This is where you put your css, js etc. files (in js/, css/... subfolders) 

Теперь, если вы идете в HomeController в src/AppBundle/Controller. Там вы увидите функцию indexAction. Это вызывает основную, индексную страницу.

Обратите внимание на пространство имен, использование и класс контроллера. Если вы создадите другое действие, например, myCustomAction(Request $request), вы создадите действие, готовое принять заказы. Но откуда? Перейти к app/config/routing.yml, вы, вероятно, увидеть что-то вроде:

app: 
    resource: "@AppBundle/Controller/" 
    type:  annotation 

Выше добавить:

page: 
    path:  "/" 
    defaults: { _controller: AppBundle:Home:myCustom } 
//note that I first called the bundle (AppBundle, then the HomeController (without the 
//Controller part), then the action (no Action part neither) 

Теперь вы получили себе путь к действию! Теперь просто возвращает представление в контроллер (смотрите на indexAction), должно быть что-то вроде:

$this->render('home/mycustom.html.twig'); 

в функции myCustomAction. После этого создайте файл mycustom.html.twig в папке app/Resources/views/home/, и это ваш взгляд. Обратите внимание, что Twig имеет немного другой синтаксис, чем PHP.

примечание: Я настоятельно рекомендую вам ознакомиться с официальным сайтом Symfony. Это все стиль письма/DR (слишком длинный, не читаемый). Это объясняется намного лучше там с деталями в , почему вы что-то делаете. То, что я написал, может работать или не работать для вас, из-за скорости, в которой я объяснил концепцию! Также, если вы не знакомы с MVC, я предлагаю вам сначала изучить логику, прежде чем бросаться в Symfony.

+0

Во-первых, спасибо за ваш быстрый ответ, хотя это не то, что я ищу, я сделал то, что вам было поручено, d do, и я уже читал и следил за ссылкой несколько раз, раньше работал с MVC, и мой учитель бросил вызов мне начать работать с symfony. Чтобы понять это, он по-прежнему показывает то же сообщение, что и на скриншоте выше – Simplicity

+0

@MikeDonkers А, я вижу, хорошо в консоли записывать 'php app/console cache: clear --prod = dev', а затем запускать сервер снова, кеш должен быть очищен, когда основные изменения сделаны так! :) – NemanjaT

+0

используйте app_dev.php в своем URL-адресе. например Http: //path/to/project/app_dev.php/ –