2017-11-12 1 views
0

장고로 가입 페이지를 만드는 데 문제가 있습니다. 폼 페이지를 모델과 함께 넣고 데이터베이스에 삽입하는 방법을 알고 싶었습니다. 나는 index.html을 가지고 있으며 모델과 그것을 연결하고 싶습니다. 의미, 내가 제출을 누르면 그것은 모든 데이터를 데이터베이스로 가져갈 것입니다. 어떤 도움을 주시면 감사하겠습니다. 나는 장고를 처음 사용했다. 고맙습니다!장고가 CSS를 렌더링하지 않습니다

views.py

# -*- coding: utf-8 -*- 
from __future__ import unicode_literals 

from django.shortcuts import render 

from django.contrib.auth import login, authenticate 
from django.contrib.auth.forms import UserCreationForm 
from django.shortcuts import render, redirect 

#from . import views 
# Create your views here. 

def index(request): 
    return render(request, 'index.html') 

def signup(request): 
    if request.method == 'POST': 
     form = UserCreationForm(request.POST) 
     if form.is_valid(): 
      form.save() 
      username = form.cleaned_data.get('username') 
      raw_password = form.cleaned_data.get('password1') 
      user = authenticate(username=username, password=raw_password) 
      login(request, user) 
      return redirect('home') 
     else: 
      form = UserCreationForm() 
     return render(request, 'signup.html', {'form': form}) 

settings.py

Django settings for mysite project. 

Generated by 'django-admin startproject' using Django 1.11.7. 


import os 


BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__))) 


# Quick-start development settings - unsuitable for production 
# See https://docs.djangoproject.com/en/1.11/howto/deployment/checklist/ 

# SECURITY WARNING: keep the secret key used in production secret! 
SECRET_KEY = '*o7vg-hqbcx9bqh6fcg^daw21(#2bb8ik14-^02e!nus*y##&c' 

# SECURITY WARNING: don't run with debug turned on in production! 
DEBUG = True 

ALLOWED_HOSTS = [] 


# Application definition 

INSTALLED_APPS = [ 
    'django.contrib.admin', 
    'django.contrib.auth', 
    'django.contrib.contenttypes', 
    'django.contrib.sessions', 
    'django.contrib.messages', 
    'django.contrib.staticfiles', 
] 

MIDDLEWARE = [ 
    'django.middleware.security.SecurityMiddleware', 
    'django.contrib.sessions.middleware.SessionMiddleware', 
    'django.middleware.common.CommonMiddleware', 
    'django.middleware.csrf.CsrfViewMiddleware', 
    'django.contrib.auth.middleware.AuthenticationMiddleware', 
    'django.contrib.messages.middleware.MessageMiddleware', 
    'django.middleware.clickjacking.XFrameOptionsMiddleware', 
] 

ROOT_URLCONF = 'mysite.urls' 

TEMPLATES = [ 
    { #['./website/static'], 
     'BACKEND': 'django.template.backends.django.DjangoTemplates', 
     'DIRS': ['./website/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', 
      ], 
     }, 
    }, 
] 

WSGI_APPLICATION = 'mysite.wsgi.application' 


# Database 
# https://docs.djangoproject.com/en/1.11/ref/settings/#databases 

DATABASES = { 
    'default': { 
     'ENGINE': 'django.db.backends.sqlite3', 
     'NAME': os.path.join(BASE_DIR, 'db.sqlite3'), 
    } 
} 


# Password validation 
# https://docs.djangoproject.com/en/1.11/ref/settings/#auth-password-validators 

AUTH_PASSWORD_VALIDATORS = [ 
    { 
     'NAME': 'django.contrib.auth.password_validation.UserAttributeSimilarityValidator', 
    }, 
    { 
     'NAME': 'django.contrib.auth.password_validation.MinimumLengthValidator', 
    }, 
    { 
     'NAME': 'django.contrib.auth.password_validation.CommonPasswordValidator', 
    }, 
    { 
     'NAME': 'django.contrib.auth.password_validation.NumericPasswordValidator', 
    }, 
] 


# Internationalization 
# https://docs.djangoproject.com/en/1.11/topics/i18n/ 

LANGUAGE_CODE = 'en-us' 

TIME_ZONE = 'UTC' 

USE_I18N = True 

USE_L10N = True 

USE_TZ = True 


# Static files (CSS, JavaScript, Images) 
# https://docs.djangoproject.com/en/1.11/howto/static-files/ 

STATIC_URL = '/static/' 

STATICFILES_DIRS = (
    os.path.join(BASE_DIR, "website", "static"), 
) 

signup.html

<!DOCTYPE html> 
<html > 
<head> 
    <meta charset="UTF-8"> 
    <title>Login</title> 
    <link rel="stylesheet" href="signin.css"> 
    </head> 


<body> 
</div> 
<div class='login'> 
    <div class='login_title'> 
    <span>Sign Up</span> 
    </div> 
    <div class='login_fields'> 
    <div class='login_fields__user'> 
     <div class='icon'> 
     <img src='http://d2nysvt2e2u12u.cloudfront.net/img/NPLwebsite17_header_mobile_accountBtn.png?v=34534534'> 
     </div> 

     <input placeholder='Username' type='text'> 
     <div class='validation'> 
      <img src='https://s3-us-west-2.amazonaws.com/s.cdpn.io/217233/tick.png'> 
     </div> 
     </input> 
    </div> 

    <div class='login_fields__password'> 
     <div class='icon'> 
     <img src='http://upload.wikimedia.org/wikipedia/commons/9/9e/Lock_icon.png'> 
     </div> 
     <input placeholder='Password' type='password'> 
     <div class='validation'> 
      </div> 

    </div> 
    <div class='login_fields__submit'> 
     <input type='submit' value='Submit'> 



<script src='http://cdnjs.cloudflare.com/ajax/libs/jquery/2.1.3/jquery.min.js'></script> 
<script src='http://ajax.googleapis.com/ajax/libs/jqueryui/1.11.2/jquery-ui.min.js'></script> 

    <script src="signin.js"></script> 

</body> 
</html> 

urls.py

from django.conf.urls import url 

from . import views 
#from django.contrib.auth.views import views as auth 
urlpatterns = [ 
    url(r'^$', views.index, name='index'), 


     ] 

답변

1

질문을 이해하기 때문에 CSS 파일을로드하는 데 문제가 있습니다. 참조하기 전에 정적 파일을로드하지 않았을 수 있습니다. Django에서는 html만을 사용할 때와 다른 방식으로 참조해야합니다.

나는 당신의 html 파일을 수정했을 뿐이며, 이것이 유일한 문제인 경우 이러한 변경으로 인해 작동하지 않을 것입니다.

작동하지 않는 경우 알려주세요.

<!DOCTYPE html> 
<html > 
<head> 
    <meta charset="UTF-8"> 
    <title>Login</title> 

    {% load staticfiles %} 
    <link rel="stylesheet" href={% static 'signin.css' %}> 
    </head> 
+0

감사합니다. 그것은 가치있는 정보였습니다. 그러나 실제로 html을 설정하고 데이터를 데이터베이스에 저장하는 방법을 묻는 중이었습니다. – coder666

+0

이 사람은 큰 말을하고 깊이있는 설명을 할 수 있습니다. https://www.youtube.com/watch? v = hU5QSQt6yQc & 인덱스 = 8 &리스트 = PLQVvvaa0QuDeA05ZouE4OzDYLHY-XH-Nd – Marcel

관련 문제