· 9 years ago · Dec 18, 2016, 12:54 PM
1urls:
2
3from django.conf.urls import url, include
4from rest_framework import routers
5from django.contrib import admin
6from blog import views
7
8from django.conf import settings
9from django.conf.urls.static import static
10from rest_framework_swagger.views import get_swagger_view
11
12root_url = 'api/blog'
13swagger_schema_view = get_swagger_view(title='Blog API')
14
15router = routers.DefaultRouter()
16router.register(r''+root_url+'', views.PostViewSet)
17router.register(r''+root_url+'/users', views.UserViewSet)
18
19urlpatterns = [
20 url(r'^'+root_url+'/tinymce/', include('tinymce.urls')),
21 url(r'^'+root_url+'/admin/', admin.site.urls),
22 url(r'^' + root_url + '/swagger', swagger_schema_view),
23 url(r'^', include(router.urls)),
24] + static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)
25
26
27settings:
28"""
29Django settings for simple_blog project.
30
31Generated by 'django-admin startproject' using Django 1.10.2.
32
33For more information on this file, see
34https://docs.djangoproject.com/en/1.10/topics/settings/
35
36For the full list of settings and their values, see
37https://docs.djangoproject.com/en/1.10/ref/settings/
38"""
39
40import os
41
42# Build paths inside the project like this: os.path.join(BASE_DIR, ...)
43BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
44
45# Quick-start development settings - unsuitable for production
46# See https://docs.djangoproject.com/en/1.10/howto/deployment/checklist/
47
48# SECURITY WARNING: keep the secret key used in production secret!
49SECRET_KEY = '0tax3n(@rr-p(ri)7+-pi^l%9q4#i^5(^z^$97%-#jv5%ae-i@'
50
51# SECURITY WARNING: don't run with debug turned on in production!
52# DEBUG = True
53
54ALLOWED_HOSTS = ['localhost', '127.0.0.1']
55
56# Application definition
57
58INSTALLED_APPS = [
59 'django.contrib.admin',
60 'django.contrib.auth',
61 'django.contrib.contenttypes',
62 'django.contrib.sessions',
63 'django.contrib.messages',
64 'django.contrib.staticfiles',
65 'rest_framework',
66 'rest_framework_swagger',
67 'blog',
68 'tinymce'
69]
70
71MIDDLEWARE = [
72 'django.middleware.security.SecurityMiddleware',
73 'django.contrib.sessions.middleware.SessionMiddleware',
74 'django.middleware.common.CommonMiddleware',
75 'django.middleware.csrf.CsrfViewMiddleware',
76 'django.contrib.auth.middleware.AuthenticationMiddleware',
77 'django.contrib.messages.middleware.MessageMiddleware',
78 'django.middleware.clickjacking.XFrameOptionsMiddleware',
79]
80
81ROOT_URLCONF = 'mysite.urls'
82
83TEMPLATES = [
84 {
85 'BACKEND': 'django.template.backends.django.DjangoTemplates',
86 'DIRS': [os.path.join(BASE_DIR, 'templates')]
87 ,
88 'APP_DIRS': True,
89 'OPTIONS': {
90 'context_processors': [
91 'django.template.context_processors.debug',
92 'django.template.context_processors.request',
93 'django.contrib.auth.context_processors.auth',
94 'django.contrib.messages.context_processors.messages',
95 ],
96 },
97 },
98]
99
100WSGI_APPLICATION = 'mysite.wsgi.application'
101
102
103# Password validation
104# https://docs.djangoproject.com/en/1.10/ref/settings/#auth-password-validators
105
106AUTH_PASSWORD_VALIDATORS = [
107 {
108 'NAME': 'django.contrib.auth.password_validation.UserAttributeSimilarityValidator',
109 },
110 {
111 'NAME': 'django.contrib.auth.password_validation.MinimumLengthValidator',
112 },
113 {
114 'NAME': 'django.contrib.auth.password_validation.CommonPasswordValidator',
115 },
116 {
117 'NAME': 'django.contrib.auth.password_validation.NumericPasswordValidator',
118 },
119]
120
121AUTH_USER_MODEL = 'blog.User'
122
123# Internationalization
124# https://docs.djangoproject.com/en/1.10/topics/i18n/
125
126LANGUAGE_CODE = 'en-us'
127
128TIME_ZONE = 'UTC'
129
130USE_I18N = True
131
132USE_L10N = True
133
134USE_TZ = True
135
136# Static files (CSS, JavaScript, Images)
137# https://docs.djangoproject.com/en/1.10/howto/static-files/
138
139STATIC_URL = '/static/'
140
141# media files
142ENV_PATH = os.path.abspath(os.path.dirname(__file__))
143MEDIA_ROOT = os.path.join(ENV_PATH, 'media' + os.path.sep)
144MEDIA_URL = "/api/blog/media/"