Hello Coders,
Эта статья направлена на помощь студентам и новичкам изучать программирование, обновив Панель администратора с открытым исходным кодом закодирован в Django Framework Отказ Любой, кто следует на этой задаче, достигнет нескольких вещей:
- Приспособиться с рамками Git/Django
- Приспосабливаться с готовым к производственным стартером: Django Atlantis
- Создайте проект Python, используя виртуальную среду
- Изменить название существующей страницы
- Создать новую страницу
- Список определил пользователей, используя оболочку Django
Спасибо за прочтение! – Содержание, предоставленное Генератор приложений Отказ
Веб-приложение, используемое в этой статье, опубликовано в GitHub, в рамках лицензии MIT кодируется с базовым набором функций на вершине красивого комплекта UI:
- SQLite, Django родной ORM
- Модульная кодовая база
- Аутентификация на основе сессии (вход, зарегистрироваться)
- Валидация форм
- Ui kit: Атлантис темная приборная панель предоставляется имкита
Что такое Django (веб-каркас)
Джанго Является ли структура веб-приложений с открытым исходным кодом, написанная в Python. Рамка означает коллекцию модулей и помощников, которые облегчают развитие. Они логически сгруппированы вместе и позволяют создавать веб-приложения, повторно используя вещи, а не писать все с нуля.
Полезно Ресурсы Django :
- Джанго – Официальный сайт и документы
- Reddit/r/django – супер активное сообщество Reddit
- Джанго – связанный контент, предоставляемый (популярный) Pull-Stack-Python Platform
Клонировать исходный код
Как уже упоминалось ранее, приложение опубликовано на GitHub, и мы можем легко взять на себя источники, загрузив ZIP с страницы проекта или с помощью терминала и Гит
Командный инструмент для клонирования источников:
$ git clone https://github.com/app-generator/django-dashboard-atlantis-dark.git $ cd django-dashboard-atlantis-dark
Структура кода
После того, как у нас будет исходный код локально, давайте найдя момент, чтобы проанализировать структуру. Django Projects, по умолчанию, являются модульными и довольно простыми для понимания и обновления. Наш проект не является исключением, а кодовая база разделена на три модуля:
- Основной модуль – используется для обработки статических активов (JS, CSS, изображения) и глобальной конфигурации
- Модуль аутентификации – обрабатывает логин и пользователей Регистрация
- Модуль приложения – Управление всеми другими действиями: подавать страницы приложений, когда пользователи аутентифицированы и перенаправляются на страницу входа в систему. Соответствующие файлы перечислены в этой простой диаграмме:
# Source code: # https://github.com/app-generator/django-dashboard-atlantis-dark| |-- requirements.txt # project dependencies |-- manage.py # app bootstrapper | |-- | | | |---- settings.py # global settings | |---- urls.py # define the routing rules | | | |---- # used for assets (js, css, images) | |---- # HTML templates | | | |-- layouts, includes, pages | | |-- | | | |---- views.py # manage Login, registration pages | |---- urls.py # Auth routing rules (login, register) | |---- forms.py # Define auth forms | | |-- | | | |---- views.py # load dashboard pages | |---- urls.py # Define the routing rules | |---- models.py # Define the User model, used by authentication | |-- ******************************************************************
Есть вопросы относительно структуры? Ама в комментариях.
Построить проект
Проекты Python/Django, как правило, являются сборки из источников и должны сделать то, что нам нужно установить проектные зависимости, перечисленные в требования .txt Отказ Мы можем установить зависимости двумя способами:
- Используя глобальную среду Python, для установки проектных зависимостей теперь всегда является хорошей практикой, основанной на том, что у нас могут быть конфликты между версиями, используемыми в других приложениях.
- Используя Виртуальная среда – Большую часть времени, рекомендуемый способ, который помогает нам выполнить и построить приложение, используя Python Sandbox. Все модули, необходимые приложением, установлены внутри виртуальной связи, и риск для конфликтов с модулями, используемыми другими приложениями Python, исчезают.
Чтобы активировать виртуальную ENV и установить модули, которые нам нужно ввести несколько простых команд в терминале:
$ # Make sure you are inside the project $ cd django-dashboard-atlantis-dark $ $ # Virtualenv modules installation (Unix based systems) $ virtualenv --no-site-packages env $ source env/bin/activate $ $ # Virtualenv modules installation (Windows based systems) $ # virtualenv --no-site-packages env $ # .\env\Scripts\activate $ $ # Install modules $ pip3 install -r requirements.txt
Если все пойдет хорошо, мы можем перейти к следующему этапу:
Запустите веб-приложение
Чтобы иметь использование Django Web App, нам нужно настроить базу данных перед запуском. Этого можно легко сделать только с двумя простыми командами:
$ # makemigrations sub-command will generate the necessary SQL code $ python manage.py makemigrations $ $ # Migrate sub-command will create the SQLite database and tables $ python manage.py migrate
Если все пойдет хорошо, мы можем начать приложение и посетить пользовательский интерфейс в браузере, набрав в консоли:
$ # Start the application (development mode) $ python manage.py runserver # default port 8000 $ $ # Start the app - custom port $ # python manage.py runserver 0.0.0.0:$ $ # Access the web app in browser: http://127.0.0.1:8000/
По умолчанию в приложении нет пользователя по умолчанию, и нам нужно создать один. Как уже упоминалось в первой части статьи, приложение поставляется с экранами аутентификации для входа и регистрации.
Регистрация страницы
После создания пользователя мы можем получить доступ к странице входа и аутентификацию:
После входа в систему мы должны увидеть меню веб-приложения и страницу приборной панели по умолчанию:
Обновите название страницы
В этом проекте Django страницы отображаются с использованием композиции между главной страницей и реальной страницей, которую расширяться
Скелет с конкретными данными. Например, Индекс страницы расширяется
главная страница default.html.
Код для главная страница
Django Dashboard Atlantis - { % block title % }{ % endblock % } | AppSeed { % include 'includes/navigation.html' % } { % include 'includes/sidenav.html' % }{ % content % }{ % content % }{ % include 'includes/footer.html' % }
Когда новая страница расширяется
Другая страница, конкретное содержание должно быть определено между корреспонденторами блоков, как мы можем видеть для Индекс страница:
{% extends "layouts/default.html" %} {% block title %} Dashboard {% endblock title %} { % block content % }Specific Content injected into the master page
{ % endblock content % }
Чтобы изменить название страницы, нам нужно обновить текст внутри Заголовок блок
:
{% extends "layouts/default.html" %} {% block title %} New Title {% endblock title %} ...
Создать новую страницу
Приложение, если текущий пользователь аутентифицирован, обслуживает страницы из каталога страницы Отказ Чтобы облегчить эту задачу, проект поставляется с черной страницей, которую мы можем использовать в качестве скелета, чтобы добавить новые страницы:
Черная страница Путь: root / основной / Шаблоны / страницы
Содержание страницы:
{% extends "layouts/default.html" %} {% block title %} Dashboard {% endblock title %} {% block stylesheets %}{% endblock stylesheets %} {% block content %}Add content here
{% endblock content %} {% block javascripts %}{% endblock javascripts %}
Чтобы создать новую страницу, просто сохраните этот шаблон как New-Page.html, обновите контент как Bellow, сохранить и получить доступ к новой странице в браузере: http://localhost: 8000/new-page.html
{% extends "layouts/default.html" %} {% block title %} My Page Title {% endblock title %} {% block stylesheets %}{% endblock stylesheets %} {% block content %}This is my content rendered by my new page.
{% endblock content %} {% block javascripts %}{% endblock javascripts %}
Список пользователей с помощью консоли
Django предлагает удобный способ проверить прикладные структуры, информацию баз данных и методы, определенные или используемые приложением: Django Shell.
Чтобы начать оболочку Django, нам нужно использовать оболочка
подделка
$ # Start the Django shell $ python manage.py shell
Если все идет хорошо, мы должны увидеть этот вывод:
>>> Python 3.7.2 (tags/v3.7.2:9a3ffc0492, Dec 23 2018, 22:20:52) [MSC v.1916 32 bit (Intel)] on win32 >>> Type "help", "copyright", "credits" or "license" for more information. >>> (InteractiveConsole) >>>
С этого момента мы можем взаимодействовать с нашими данными и методами проекта по этому интерфейсу оболочки. Для листинга всех пользователей, зарегистрированных в приложении, нам необходимо импортировать модели пользователей, где все пользователи сохраняются, и сделать запрос с помощью нативного ORM Django:
>>> from django.contrib.auth.models import User >>> User.objects.all()]> >>> User.objects.all()[0].id 1 >>> User.objects.all()[0].username `test`
Спасибо за чтение этого долгая пост. Не стесняйтесь в комментариях.
Ресурсы и ссылки
- Django Dashboard Atlantis Dark – исходный код
- Django Admin Dashboards – Подробнее Admin Dashboards, закодированные в Джангу
Оригинал: “https://dev.to/sm0ke/django-dashboard-atlantis-learn-by-coding-simple-tasks-3d4p”