Рубрики
Без рубрики

Создайте веб-сайт социальных сетей с Django – настроить проект (часть 1)

Здравствуйте, разработчики, я делаю эту многофункциональную учебную серию, ориентированную на обучение Django. Это руководство … Помечено Django, Python, программирование, WebDev.

Здравствуйте, разработчики, я делаю эту многофункциональную учебную серию, ориентированную на обучение Django. Этот учебный сериал является новичком и поможет новичкам учиться Django, выполняя практический проект.

Чтобы сделать это простым, мы не будем использовать ни одной рамки Frontend в этом проекте. Мы будем использовать HTML, CSS (Bootstrap и некоторые пользовательские CSS) и jQuery в проекте.

Основным направлением этой учебной серии является изучение Django, поэтому мы в основном сосредоточились на Django.

Итак, давайте поговорим о проекте, который мы будем делать. Это был бы простой веб-сайт социальных сетей, где пользователи могут сделать следующие вещи:

  1. Опубликовать изображения вместе с описанием и тегами. Вы можете обновить или удалить их в любое время.
  2. Посмотреть профиль другого и отправьте им запрос на добавление в друзья или отменить, если вы отправили один по ошибке.
  3. Принять или отклонить запросы на добавление в друзья, полученные от других пользователей.
  4. Ответные существующие друзья.
  5. Поиск сообщений на основе тегов.
  6. Поиск пользователей на основе их имени пользователя.
  7. Откройте для себя раздел «Новые люди», чтобы порекомендовать новых людей, чтобы добавить в друзья на основе взаимных подключений.
  8. Все это будут особенности сайта, которые мы будем строить. Итак, давайте сделаем это частью.

Итак, в этом первом руководстве мы будем создавать наш проект Django.

Создание нового проекта Django

Итак, создание нового проекта Django довольно прост. Во-первых, вам нужно установить Django, если вы не сделали раньше.

Чтобы установить Django, нам нужно будет запустить следующую команду:

pip install Django

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

django-admin startproject photoshare

Здесь Photoshare Обозначает имя, которое мы хотим дать нашему проекту Django.

Это создаст и настроит проект Django для нас. Если вы посмотрите в созданную папку, в нем будет много файлов.

Это будет иметь файл manage.py, а также папка Photoshare. Вы не должны переименовать эту папку. Вы можете переименовать внешнюю папку, хотя.

Во время папки PhotoShare вы можете увидеть различные файлы, такие как URLS.PY, settings.py и другие файлы. Вы можете увидеть, что все эти файлы имеют код, написанный в нем. Мы добавим наш код позже, когда мы прогрессируемся через проект.

Мы можем запустить веб-сайт на нашем локальном сервере для проверки, если все работает нормально.

Для этого мы запустим следующую команду на CLI в той же папке, где присутствует файл manage.py:

python manage.py runserver

Это сделает страницу Django по умолчанию, которая будет выглядеть так:

Теперь запустите следующую команду, чтобы сделать миграцию базы данных, а затем мигрировать, чтобы синхронизировать базу данных.

Он имеет встроенную базу данных SQLite3, которую мы будем использовать для разработки и тестирования. Вы можете переключиться на более способную базу данных, такую как Postgre SQL позже при переходе на производство.

Итак, вы можете запустить следующие две команды, чтобы сделать миграцию:

python manage.py makemigrations
python manage.py migrate

Теперь я хотел бы рассказать вам одну из мощных частей Django. Он поставляется со встроенным администратором. Итак, нам не нужно строить админскую панель самостоятельно. Мы, безусловно можем создать лучшую разработующую и пользовательскую панель администратора позже, если мы желаем, но по умолчанию все будет хорошо для нас.

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

Чтобы создать суперпользователь, мы можем запустить следующую команду:

python manage.py createsuperuser

После запуска этой команды вам будет задан имя пользователя, электронная почта, пароль в самом CLI. Затем он создаст суперпользователь для вас.

Теперь у вас есть доступ к панели администратора, которую вы можете получить доступ, запустив сервер еще раз. После того, как сервер работает и работает, вы можете посетить панель администратора на странице/admin. Доступ к нему, добавив/admin к URL по умолчанию, который выглядит как localhost: 8000/admin или 127.0.0.1:800/admin.

После внесения в свои полномочия вы будете доставлены на панель инструментов Django Admin, которая выглядит так:

Ваш администратор дома будет иметь только групп и поле пользователей. При создании новых моделей и добавьте их на панель администратора, они появятся здесь.

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

Теперь мы хотели бы создать необходимые приложения (небольшие части проектов в Django, называются приложениями). У нас будет два отдельных приложения – пользователи и корм.

Приложение для пользователей будет обрабатывать все модели, формы и представления, касающиеся аутентификации, профили пользователей, друзей и отправки, получении запросов, поиск пользователей и создание новых друзей I.E. Все актуально для пользователя.

Приложение для подачи будет обрабатывать все модели, представления и формы, касающиеся сообщений I.E. Post, likes и комментарии на сообщениях, поиск сообщений, отображение постов определенного пользователя и так далее. Чтобы создать эти два приложения в нашем проекте Django, мы получим помощь CLI и введите следующие команды:

python manage.py startapp feed
python manage.py startapp users

Запуск вышеупомянутых команд создаст два приложения – Feed и пользователей соответственно. Оба будут иметь некоторые файлы Python в них. Мы добавим содержимое позже на эти файлы.

На данный момент давайте зарегистрируем наши приложения в файле settings.py папки Vinner Photoshare. Откройте файл settings.py в своем любимом редакторе текста/кода и добавьте следующие строки кода, чтобы установить список приложений в файл.

Итак, добавьте эти два элемента к этому установленным приложениям список:-

'users.apps.UsersConfig',
'feed.apps.FeedConfig',

Это будет выглядеть так сейчас: –

INSTALLED_APPS = [
    'users.apps.UsersConfig',
    'feed.apps.FeedConfig',
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',
]

Не удаляйте все, что уже присутствует в списке установленных приложений.

Кроме того, мы будем использовать хрустящие формы для стилизования наших форм Django, которые мы создадим позже, поэтому давайте также устанавливаем.

pip install django-crispy-forms

Также, поскольку это также приложение, нам придется добавить его в список установленных приложений в Settings.py файл. После добавления его, наш список установленных_apps будет выглядеть так:

INSTALLED_APPS = [
    'users.apps.UsersConfig',
    'feed.apps.FeedConfig',
    'crispy_forms',
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',
]

Кроме того, поскольку CRISPY_FORMS использует Bootstrap 3 по умолчанию, мы хотели бы установить его для использования Bootstrap 4. Для этого добавьте эту строку в конце настроек .py файл.

CRISPY_TEMPLATE_PACK = 'bootstrap4'

Кроме того, нам нужно указать статические и медиапульсы. Мы добавим следующие строки к нашим файлам настроек .py, чтобы сделать это (пропустить любую строку, если уже присутствую):

STATIC_ROOT = os.path.join(BASE_DIR, 'staticfiles')
STATIC_URL = '/static/'
MEDIA_ROOT = os.path.join(BASE_DIR, 'media')
MEDIA_URL = '/media/'

Теперь, давайте также добавим еще несколько настроек, чтобы помочь нам сказать Django, что делать в этих конкретных ситуациях.

LOGIN_REDIRECT_URL = 'home'
LOGIN_URL = 'login'

Первая строка направляет Django, чтобы перейти на страницу «Домашняя» после успешного входа в систему. Мы будем держать нашу «домашнюю» страницу первой страницей нашего веб-сайта. Вы можете выбрать какую бы страницу вы хотели бы перенаправить пользователей.

Вторая строка направляет Django, чтобы использовать путь, указанный в имени URL-адреса «Войти» при поиске URL, необходимого для отображения входа в систему. Вы поймете это позже.

Теперь давайте настроим систему восстановления пароля. Мы отправим электронное письмо, когда пользовательские запросы на сброс пароля. Мы будем использовать Gmail для этой цели.

Получите пользователя Gmail Host (ваш Gmail ID) и пароль (генерируйте свой пароль в посещении этой ссылки). Этот учебник будет полезен в выполнении этой задачи.

EMAIL_BACKEND = 'django.core.mail.backends.smtp.EmailBackend'
EMAIL_HOST = 'smtp.gmail.com'
EMAIL_PORT = 587
EMAIL_USE_TLS = True
EMAIL_HOST_USER = os.environ.get('EMAIL_HOST_USER')
EMAIL_HOST_PASSWORD = os.environ.get('EMAIL_HOST_PASSWORD')

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

Итак, теперь вы настроили свой проект, а теперь в следующем руководстве мы сделаем приложение пользователя.

Надеюсь, вам понравилась первая часть этого руководства, это было все о настройке. Следующая часть приведет вас к фактическому строительству сайта.

И если вы хотите увидеть полный код, просмотреть REPO Github проекта . Кроме того, вы можете попробовать это приложение, посетив эта ссылка Отказ Он принимается на Heroku и средства массовой информации и статические файлы в области хранения Google Cloud.

Оригинал: “https://dev.to/shubham1710/build-a-social-media-website-with-django-set-up-the-project-part-1-37an”