등록과 출판사

5053 단어
1. django 핵심 기능
django의 기능이 매우 많기 때문에 출판사는 일부 기능을 사용할 수 있다. 가장 빠르고 가장 간단하게 django의 운영 모델을 이해하고 각 점의 후속적인 세분화를 통해 정리할 수 있다.
django의 경로
django의 보기
템플릿
django의 ORM.
django의 쿠키와session
django의 중간부품
django의 aax
django의form 구성 요소
django의auth
 
2.django의 전역 프로필 setting.py
  BASE_DIR # 프로젝트 폴더, 시스템의 절대 경로
DRBUG # 디버그 켜기, 켜기 및 끄기
  ALLOWED_HOST # 액세스 가능한 세그먼트
  INSTALLED_APPS # 등록 app, 프로젝트
MIDDLEWARE # 미들웨어
  ROOT_URLCONF# 루트 파일 위치
TEMPLATES #html 템플릿을 저장하는 경로
DATABASES # 데이터베이스 디렉토리
  STSTIC_URL # 각 app에서 정적 파일을 저장할 디렉토리
  STATICFILES_DIRS # 프로젝트 공통 정적 자원 저장 경로
  LANGUAGE_CODE # 언어
  TIME_존#시간대
 
3. 랜딩 페이지
1) URL 점프views 함수 설계
2)views 함수 디자인 업무 논리, 요청에 따라 템플릿 페이지로 돌아가기
3) 템플릿 페이지에서views 함수의 데이터를 받아들일 수 있음
####urls.py

url(r'^app01/', include('app01.urls',namespace='app01'))

####views.py
def login(request):
err_msg = ''
if request.method == 'POST':
user = request.POST.get('username')
passwd = request.POST.get('password')
print(user, passwd)
if user == 'qgw' and passwd == '123':
return render(request, 'cbs.html')
err_msg = ' '
return render(request, 'login.html', {'err_msg': err_msg})

####login.html cbs.html

jquery

 
4.출판사
1) 설계표 orm 대상 관계 관리 모델
2) 디자인 URL은 조회, 추가, 삭제, 수정 작업을 포함한다.
3) 보기 함수 URL에 대한 접근 실행
4) 템플릿 디자인은 공통 템플릿을 사용하고 데이터를 통해 템플릿 내용을 수정한다
####models.py####       
class presslist(models.Model):
name = models.CharField(max_length=32)

####url.py#### url
url(r'^press/list', views.presslist),
url(r'^press/del', views.pressdel),
url(r'^press/add', views.pressadd),
url(r'^press/edit/', views.pressedit),
####views.py####          
from django.shortcuts import render, redirect
from app1 import models


# Create your views here.
def login(request):
err_msg = ''
if request.method == 'POST':
user = request.POST.get('username')
passwd = request.POST.get('password')
if models.login.objects.filter(password=passwd, name=user):
return render(request, 'cbs.html')
err_msg = ' '
return render(request, 'login.html', {'err_msg': err_msg})


def presslist(request):
msg_all = models.presslist.objects.all()
return render(request, 'cbs.html', {'msg': msg_all})


def pressadd(request):
if request.method == 'POST':
press_name = request.POST.get('pressname')
models.presslist.objects.create(name=press_name)
return redirect('/press/list')
return render(request, 'cbsadd-edit.html')


def pressdel(request):
del_id = request.GET.get('id')
print(del_id)
models.presslist.objects.get(pk=del_id).delete()
return redirect('/press/list')


def pressedit(request):
edit_id = request.GET.get('id')
obj = models.presslist.objects.get(pk=edit_id)
msg = ''
if request.method == 'POST':
obj.name = request.POST.get('pressname')

if models.presslist.objects.filter(name=obj.name):
msg = ' '

if not obj.name:
msg = ' '

if not models.presslist.objects.filter(name=obj.name) and obj.name:
obj.save()

return redirect('/press/list')
return render(request, 'cbsadd-edit.html', {'obj': obj, 'msg': msg})

####tempalte  ####            

base.html , bootstrap
####tempalte/cbs.html
{% extends 'base.html' %}
{% block body1 %}
{% for obj in msg%} {% endfor%} ID출판사 이름 조작 {{obj.pk} {{obj.name} &nbsp&nbsp&nbsp {% endblock%}
####tempalte/cbsadd-edit
{% extends 'base.html' %}

{% block body1 %}
{{msg} 제출 {% endblock%}
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

좋은 웹페이지 즐겨찾기