0 / 0 / 0
Регистрация: 09.10.2016
Сообщений: 76
1

Как обойти маршрутизацию

03.05.2018, 19:22. Показов 477. Ответов 7

Здравствуйте. Написала сайт и разместила все файлы в одной главной папке, т.к. их немного. Но преподаватель сказал, что нужно разделить на шаблоны, конроллеры и модели. Есть ли какой-либо способ разделить файлы по папкам, без маршрутизации? Просто если я начну в ней разбираться, то боюсь, что не успею к срокам дописать сайт.
0

Помощь в написании контрольных, курсовых и дипломных работ здесь.

Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
03.05.2018, 19:22
Ответы с готовыми решениями:

Как написать маршрутизацию PHP?
На сайте требуется показывать определенного пользователя лишь введя определенный адрес www, как в...

Как настроить маршрутизацию на W2k
Собственно сабж

Как протестировать маршрутизацию почты?
Два сервера из одной именованной сети. Пользователи с одного сервера отправляют пользователям с...

Как настроить статическую маршрутизацию?
Не понимаю, что не так. В чем проблема?

7
Особый статус
620 / 218 / 164
Регистрация: 18.11.2015
Сообщений: 1,083
03.05.2018, 21:32 2
Смотря, что у вас там понаписано, вообще не правильно связывать шаблоны с маршрутизацией. А так хоть скиньте структуру и логику, где все это воротится.
0
21 / 4 / 1
Регистрация: 29.05.2013
Сообщений: 82
03.05.2018, 21:37 3
Если сказали делить на шаблоны, контроллеры и модели, то он имел ввиду MVC модель. Если у вас в одном файле вперемешку и логика, и шаблон, то придётся, видимо, переделать.
Если пытаться без маршрутизации, то наверное можно, но получиться может криво.
Что-то вроде такого: делаем файл index.php, который будет принимать все запросы (в htaccess прописываем настройки), потом разбираем URI и на его основе выделяем имя контроллера, который мы подключим (но тут придётся построить все ссылочки на сайте так, чтобы в их адресе было имя подключаемого контроллера). Подключаем его и, допустим, вызываем actionIndex в нём, в котором обращаемся к модели (если нужно) и подключаем представление.
Но маршрутизация это не так сложно, как кажется. Но пару дней на её разбор уйти может..
0
299 / 250 / 66
Регистрация: 15.09.2017
Сообщений: 1,150
04.05.2018, 00:30 4
Vladlena_B, да. Фронт-контроллера может и не быть. Считайте, что за вас первичную маршрутизацию выполнил Web-сервер. Теперь можете в ваших файлах проверять входные параметры, подключать нужные модели и представления.
0
0 / 0 / 0
Регистрация: 09.10.2016
Сообщений: 76
04.05.2018, 08:19  [ТС] 5
У меня сейчас по сути только шаблоны и модели.
Структура следующая:
- library
-- views
-- models.
А что должно хранится в папке library, чтобы правильно воспринимались пути? Хочу обойтись без написания класса Router, просто прописывать везде путь к файлу (как он есть) вручную, т.к. файлов не так уж и много. Может можно поместить туда главную страницу index.php?
0
299 / 250 / 66
Регистрация: 15.09.2017
Сообщений: 1,150
04.05.2018, 12:08 6
Не надо один из "контроллеров" помещать в эту папку. Они теперь у вас по сути все фронтальные, а папка library должна быть закрыта от прямого доступа.

О каких путях идет речь? Вы же писали, что все основные файлы располагаются в "главной папке". Или главная - это не корневая папка сайта?

Добавлено через 5 минут
Или можете сложить контроллеры в library/controllers, но тогда их нужно отделить от фронтов, в которых они инициализируются.
0
0 / 0 / 0
Регистрация: 09.10.2016
Сообщений: 76
04.05.2018, 16:23  [ТС] 7
Под главной я подразумевала library.
А как тогда нужно будет обращаться к сайту, если начальная страница будет лежать в views? Я так понимаю, что в library должны лежать только папки?
0
299 / 250 / 66
Регистрация: 15.09.2017
Сообщений: 1,150
05.05.2018, 00:48 8
Где находится library относительно корневой папки сайта?

Цитата Сообщение от Vladlena_B Посмотреть сообщение
А как тогда нужно будет обращаться к сайту, если начальная страница будет лежать в views? Я так понимаю, что в library должны лежать только папки?
Я не понимаю, про что вы спрашиваете.

Если вы планируете объявлять каждый контроллер и его инициализировать в одном файле, делаете так:
/index.php - контроллер главной
/page2.php - контроллер page2 и т.д.
/library

Если в разных, то так:
/index.php - подключение и и инициализация контроллера главной
/page2.php - подключение и инициализация контроллера page2 и т.д.
/library/controllers/index.php - объявление контроллера главной
/library/controllers/page2.php - объявление контроллера page2 и т.д.

Второй способ более гибкий, т.к. он позволяет в разных фронтах использовать один и тот же контроллер, но с разными параметрами, например.
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
05.05.2018, 00:48

Подскажите как сделать маршрутизацию
A-15 компов 192.168.3.0/24 B-48 компов С-100 компов D-8 компов E- 25...

Как настроить маршрутизацию в RedHat?
Как настроить маршрутизацию в RedHat? то есть с eth1 На eth0

Как настроить маршрутизацию через VPN?
На сервере настроен OpenVPN на CentOS, на windows клиенте есть OpenVPN client. OpenVPN показывает...

Как настроить маршрутизацию в web.xml
Как настроить маршрутизацию в web.xml HTTP Status 404 – Не найдено Type Status Report ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2021, vBulletin Solutions, Inc.