Django의 몇 가지 URL 루트 형식과 보기 함수 수신 매개 변수 방식

2480 단어 Django
1、브라우저의 URL에서 직접 사용하시겠습니까?& 기호와 연결된 매개 변수, 보기 함수는 어떻게 매개 변수를 수신해야 합니까?
  path('args/', views.params_first),

수신 방식: 그 중의'user'와'pwd'는 마음대로 정의할 수 있지만 수량상의 대응에 주의해야 한다
 def params_first(request):
	    user_name = request.GET.get('user', '')
	    pass_word = request.GET.get('pwd', '')
	    result = '  :{},  :{}'.format(user_name, pass_word)
	    return HttpResponse(result)

2. 매개변수가 이(가) 아닌 것은?의 형식으로 연결하는 것이 아니라 경로(/a/a/a)의 형식으로 전달하는 것이다. 보기 함수는 어떻게 파라미터를 받아들여야 합니까?
# /(\d+)/(\w+)/              。
#         ,            (           )        。
# re_path(r'^params/(\d+)/(\w+)/$', views.params),
# \d{2}:        
re_path(r'^params/(\d{2})/(\w+)/$', views.params),
#  re_path   path()   :
#         ,params1        (                      )
# <>:        。
# <>            ,                           ,       ,     。
#       str
path('params1//', views.params1),

수신 방법:
def params(request, name, pwd):
    result = 'name={}, pwd={}'.format(name, pwd)
    return HttpResponse(result)

def params1(request, username, username):
	#        (username, username)    urls.py          
    print(type(password))
    result = 'name={}, pwd={}'.format(username, password)
    return HttpResponse(result)

3. path() 함수는 상술한 매개 변수를 직접 경로의 형식으로 보기 함수에 전달하는 것을 제외하고 다음과 같은 방법으로 매개 변수를 전달할 수 있다.
#params2()      ,              。
path('params2/', views.params2, {'user': '  ',  'pwd': '5423'}),

수신 방법:
def params2(request, user, pwd):
    result = 'name==={}, pwd==={}'.format(user, pwd)
    return HttpResponse(result)

4、re_path () 라는 URL 루트는 매개 변수의 이름을 어떻게 만듭니까?위의repath에서 매개 변수의 이름을 임의로 설정할 수 있습니다.
# ?P:            。
#        ,      params3()      id、username    。
# \d+:  \d+         ,     id。
# \w+:  \w+         ,     username。
re_path(r'^params3/(?P\d+)/(?P\w+)/$', views.params3)

수신 방법:
def params3(request, id, username):
    print('++++++', request)
    result = 'id={}, name={}'.format(id, username)
    return HttpResponse(result)

좋은 웹페이지 즐겨찾기