Как настроить структуру папок сайта для создания с использованием Codeigniter? - PullRequest
0 голосов
/ 29 февраля 2012

Я хочу создать сайт электронной коммерции.Так что у него будет 2 стороны.Лицевая сторона сайта и задняя сторона (или панель администратора).Я хочу создать это с помощью Codeigniter framewrok.Как настроить структуру папок сайта для поддержки обеих сторон сайта?Передняя сторона сайта должна быть похожа на

http://www.mysite.com/

А URL-адрес на задней стороне должен быть похож на

http://www.mysite.com/administrator/

Есть предложения?

Заранее спасибо.

Ответы [ 3 ]

2 голосов
/ 29 февраля 2012

Хорошо, это то, что я обычно делаю.В папке приложения CI у меня есть следующее:

application/
- controllers/
- - admin/
- - - welcome.php
- - - products.php
- - welcome.php
- - products.php
- views/

Таким образом, я могу получить доступ к своему обычному сайту с помощью контроллеров в базовой папке, а со стороны администратора - с помощью контроллеров в папке администратора.Я также определил свой собственный пользовательский контроллер, из которого я расширяю все контроллеры на сайте, чтобы применять ограничения доступа на основе уровня пользователя.

2 голосов
/ 29 февраля 2012

Это довольно простая настройка, с которой можно обращаться по-разному.Я бы также предложил то, что предложил oso96_2000.Я только что сделал то, что сделал бы с папкой views.В папке views я бы поместил папку admin и public.внутри каждой папки есть новая папка для каждого контроллера, а внутри - представление для каждого контроллера.Надеюсь, это имеет смысл.

application/
- controllers/
- - admin/
- - - welcome.php
- - - products.php
- - welcome.php
- - products.php
- views/
- - admin/
- - - welcome/
- - - - view1_for_welcome.php
- - - - view2_for_welcome.php
- - - products/
- - - .....
- - public/
- - - welcome/ 
- - - - view1_for_welcome.php
- - - - view2_for_welcome.php

и так далее.тогда вам нужно убедиться, что вы поставили некоторые проверки, чтобы убедиться, что у пользователя есть доступ к административным контроллерам

0 голосов
/ 29 февраля 2012

Похоже, что администратор - это просто класс в вашем случае - в соответствии со структурой CI.

У них есть класс аутентификации , чтобы запретить обычным людям просматривать этот класс.

Что еще вам нужно знать?

Спасибо за понижение голосов. Теперь, после того, как вы читали документы по КИ или используете их каждый день в течение многих лет, вы знаете, что папки ничего не значат.По запросу ОП вы можете либо создать класс «администратор» в каталоге контроллеров и ограничить его входом в систему - класс, который CI обеспечивает для вас, чтобы работа была минимальной, - либо создать каталог с именем администратор и предоставить маршрут по умолчанию для этого каталога.,В любом случае это будет ограничено вышеупомянутым классом аутентификации.

    if($this->isLogged() === false)
    {
        header("Location: ".base_url());
        exit;
    }

не позволит никому не войти в систему.Вы также можете назначить пользовательские уровни или типы учетных записей, чтобы ограничить доступ, который вы хотите.Простое создание папок для серверной дифференциации на самом деле не означает, что они вообще разделены или даже проще в обслуживании.Это все зависит от ваших собственных организационных практик или стандартов, которые могут варьироваться в зависимости от проекта - поэтому не говорите мне о том, как дезорганизовано, когда внешние и внутренние контроллеры находятся в одной папке.Даже соглашение об именах может решить эту проблему."Какие-либо предложения?"Ну, я дал один - просто сделать это контроллером.Плюс ссылка на документы автора.И еще раз благодарю за то, что как-то не понял.

...