Skip to content

Instantly share code, notes, and snippets.

@zavod
Last active April 10, 2019 10:51
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save zavod/bed6a6c4750e71d0a39c8b933c13c10f to your computer and use it in GitHub Desktop.
Save zavod/bed6a6c4750e71d0a39c8b933c13c10f to your computer and use it in GitHub Desktop.
08.04.2019 Django/python free webinar
# Продукт компании www.zavod-it.ru
# листинг к вебинару для Django/python программистов: создаем сайт с нуля
# ссылка на видео https://www.youtube.com/watch?v=X9ZaCiwK260
# платный курс https://zavode.ru/courses/django/
@zavod
Copy link
Author

zavod commented Apr 8, 2019

Продукт компании www.zavod-it.ru

листинг к вебинару для Django/python программистов: создаем сайт с нуля

ссылка на видео https://zavode.ru/courses/sozdaem-sajt-s-nulya-na-django-08-04-2019/

платный курс https://zavode.ru/courses/django/

Starting here

download python

https://www.python.org/downloads/

pycharm

https://www.jetbrains.com/pycharm/

free bootstrap templates

https://startbootstrap.com/themes/

check libs in env

pip freeze

create virtulenv

идем в папку проекта

cd ~/Projects/webinars/

ставим python3

python3.6 -m venv .env3

на виндоус

python -m venv venv

ставим python2.7 такой

virtualenv --no-site-packages .env

если проблема с админом под Win, то можно скопировать библиотеки

на винде надо скопировать python_d.exe и pythonw_d.exe в c:\Python37\Lib\venv\scripts\nt
#активировать окружение
source .env3/bin/activate
#установка Django в виртуальное окружение
pip istall Django

добавляем метод во views.py

from django.shortcuts import render
def index(request):
    """ main page """
    context = {}
    template = 'main/index.html'
    return render(request, template, context)

добавляем урл во urls.py

весь url.py должен выглядеть так

from django.contrib import admin
from django.urls import path
from apps.main import views
urlpatterns = [
    path('', views.index, ),
    path('admin/', admin.site.urls),
]

создаем папку template_static

копируем туда статику из шаблона

вставляем в settings.py конфиг в любое место

STATICFILES_DIRS = (
    os.path.join(BASE_DIR, 'template_static/'),
)

добавляем контекстные процессоры в settings.py

              'django.template.context_processors.static',
               'django.template.context_processors.media',

должно получиться так

TEMPLATES = [
   {
       'BACKEND': 'django.template.backends.django.DjangoTemplates',
       'DIRS': [os.path.join(BASE_DIR, 'templates')]
       ,
       'APP_DIRS': True,
       'OPTIONS': {
           'context_processors': [
               'django.template.context_processors.debug',
               'django.template.context_processors.request',
               'django.contrib.auth.context_processors.auth',
               'django.contrib.messages.context_processors.messages',
               'django.template.context_processors.static',
               'django.template.context_processors.media',
           ],
       },
   },
]

cоздаем в apps.main файл models.py

from django.db import models
class Service(models.Model):
    title = models.CharField('title', max_length=255)
    tagline = models.CharField('tagline', max_length=500)
    icon = models.CharField('icon', max_length=255)
    def __str__(self):
        return self.title

запускаем создание миграции

python manage.py makemigrations main

запускаем миграции

python manage.py migrate

создаем суперюзера

python manage.py createsuperuser

админка лежит здесь

http://127.0.0.1:8000/admin/

создаем admin.py и добавляем туда:

from django.contrib import admin
from apps.main.models import Service
@admin.register(Service)
class ServiceAdmin(admin.ModelAdmin):
    pass

@dmspromo
Copy link

прошу прощение за нубство.
1.#активировать окружение
source .env3/bin/activate
в какой папке (под Win) выполнять команду?
2.в проекте нет views.py, что я сделал не так?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment