서승완

Merge branch '4-backend-skeleton' into 'master'

feat: add backend skeleton (#4)

Closes #4

See merge request !2
1 +"""
2 +ASGI config for config project.
3 +
4 +It exposes the ASGI callable as a module-level variable named ``application``.
5 +
6 +For more information on this file, see
7 +https://docs.djangoproject.com/en/3.0/howto/deployment/asgi/
8 +"""
9 +
10 +import os
11 +
12 +from django.core.asgi import get_asgi_application
13 +
14 +os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'config.settings')
15 +
16 +application = get_asgi_application()
1 +"""
2 +Django settings for config project.
3 +
4 +Generated by 'django-admin startproject' using Django 3.0.5.
5 +
6 +For more information on this file, see
7 +https://docs.djangoproject.com/en/3.0/topics/settings/
8 +
9 +For the full list of settings and their values, see
10 +https://docs.djangoproject.com/en/3.0/ref/settings/
11 +"""
12 +
13 +import os
14 +
15 +# Build paths inside the project like this: os.path.join(BASE_DIR, ...)
16 +BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
17 +
18 +
19 +# Quick-start development settings - unsuitable for production
20 +# See https://docs.djangoproject.com/en/3.0/howto/deployment/checklist/
21 +
22 +# SECURITY WARNING: keep the secret key used in production secret!
23 +SECRET_KEY = '54%9+(m*y8^!3ndhohxko%fd*$z==)k=$5jwx55-v@$y_f7=co'
24 +
25 +# SECURITY WARNING: don't run with debug turned on in production!
26 +DEBUG = True
27 +
28 +ALLOWED_HOSTS = []
29 +
30 +
31 +# Application definition
32 +
33 +INSTALLED_APPS = [
34 + 'khubox.apps.KhuboxConfig',
35 + 'django.contrib.admin',
36 + 'django.contrib.auth',
37 + 'django.contrib.contenttypes',
38 + 'django.contrib.sessions',
39 + 'django.contrib.messages',
40 + 'django.contrib.staticfiles',
41 +]
42 +
43 +MIDDLEWARE = [
44 + 'django.middleware.security.SecurityMiddleware',
45 + 'django.contrib.sessions.middleware.SessionMiddleware',
46 + 'django.middleware.common.CommonMiddleware',
47 + 'django.middleware.csrf.CsrfViewMiddleware',
48 + 'django.contrib.auth.middleware.AuthenticationMiddleware',
49 + 'django.contrib.messages.middleware.MessageMiddleware',
50 + 'django.middleware.clickjacking.XFrameOptionsMiddleware',
51 +]
52 +
53 +ROOT_URLCONF = 'config.urls'
54 +
55 +TEMPLATES = [
56 + {
57 + 'BACKEND': 'django.template.backends.django.DjangoTemplates',
58 + 'DIRS': [],
59 + 'APP_DIRS': True,
60 + 'OPTIONS': {
61 + 'context_processors': [
62 + 'django.template.context_processors.debug',
63 + 'django.template.context_processors.request',
64 + 'django.contrib.auth.context_processors.auth',
65 + 'django.contrib.messages.context_processors.messages',
66 + ],
67 + },
68 + },
69 +]
70 +
71 +WSGI_APPLICATION = 'config.wsgi.application'
72 +
73 +
74 +# Database
75 +# https://docs.djangoproject.com/en/3.0/ref/settings/#databases
76 +
77 +DATABASES = {
78 + 'default': {
79 + 'ENGINE': 'django.db.backends.mysql',
80 + 'NAME': 'khubox',
81 + 'USER': 'khubox',
82 + 'PASSWORD': 'khubox',
83 + 'HOST': '127.0.0.1',
84 + 'PORT': '3306',
85 + }
86 +}
87 +
88 +
89 +# Password validation
90 +# https://docs.djangoproject.com/en/3.0/ref/settings/#auth-password-validators
91 +
92 +AUTH_PASSWORD_VALIDATORS = [
93 + {
94 + 'NAME': 'django.contrib.auth.password_validation.UserAttributeSimilarityValidator',
95 + },
96 + {
97 + 'NAME': 'django.contrib.auth.password_validation.MinimumLengthValidator',
98 + },
99 + {
100 + 'NAME': 'django.contrib.auth.password_validation.CommonPasswordValidator',
101 + },
102 + {
103 + 'NAME': 'django.contrib.auth.password_validation.NumericPasswordValidator',
104 + },
105 +]
106 +
107 +
108 +# Internationalization
109 +# https://docs.djangoproject.com/en/3.0/topics/i18n/
110 +
111 +LANGUAGE_CODE = 'ko-kr'
112 +
113 +TIME_ZONE = 'Asia/Seoul'
114 +
115 +USE_I18N = True
116 +
117 +USE_L10N = True
118 +
119 +USE_TZ = True
120 +
121 +
122 +# Static files (CSS, JavaScript, Images)
123 +# https://docs.djangoproject.com/en/3.0/howto/static-files/
124 +
125 +STATIC_URL = '/static/'
1 +from django.contrib import admin
2 +from django.urls import include, path
3 +
4 +urlpatterns = [
5 + path('', include('khubox.urls')),
6 + path('admin/', admin.site.urls),
7 +]
1 +"""
2 +WSGI config for config project.
3 +
4 +It exposes the WSGI callable as a module-level variable named ``application``.
5 +
6 +For more information on this file, see
7 +https://docs.djangoproject.com/en/3.0/howto/deployment/wsgi/
8 +"""
9 +
10 +import os
11 +
12 +from django.core.wsgi import get_wsgi_application
13 +
14 +os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'config.settings')
15 +
16 +application = get_wsgi_application()
1 +from django.contrib import admin
2 +
3 +# Register your models here.
1 +from django.apps import AppConfig
2 +
3 +
4 +class KhuboxConfig(AppConfig):
5 + name = 'khubox'
1 +from django.db import models
2 +
3 +# Create your models here.
1 +from django.test import TestCase
2 +
3 +# Create your tests here.
1 +from django.urls import path
2 +
3 +from . import views
4 +
5 +urlpatterns = [
6 + path('', views.index, name='index'),
7 +]
1 +from django.http import HttpResponse
2 +
3 +
4 +def index(request):
5 + return HttpResponse("Hello, world. You're at the index.")
1 +#!/usr/bin/env python
2 +"""Django's command-line utility for administrative tasks."""
3 +import os
4 +import sys
5 +
6 +
7 +def main():
8 + os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'config.settings')
9 + try:
10 + from django.core.management import execute_from_command_line
11 + except ImportError as exc:
12 + raise ImportError(
13 + "Couldn't import Django. Are you sure it's installed and "
14 + "available on your PYTHONPATH environment variable? Did you "
15 + "forget to activate a virtual environment?"
16 + ) from exc
17 + execute_from_command_line(sys.argv)
18 +
19 +
20 +if __name__ == '__main__':
21 + main()