17. νμκ°μ κ³Ό νμκ°μ λ§ν¬
# νμκ°μ λ§ν¬
: νμκ°μ μ νμν λ§ν¬λ₯Ό projects/mysite/templates/navbar.html ν νλ¦Ώμ μλμ²λΌ μΆκ°
+ λ‘κ·ΈμΈκ³Ό λ‘κ·Έμμμ μ°μΈ‘μ νμκ°μ λ§ν¬ μΆκ°
+ νμκ°μ μ λ‘κ·Έμμ μνμΌ λμ νν΄ λ³΄μ΄λλ‘ μ€μ ν¨
# urls.py
: navbar.html ν νλ¦Ώμ {% url 'common:signup' %} νκ·Έλ₯Ό μΆκ°νμΌλ μ¬κΈ°μ λμνλ URL 맀ν κ·μΉμ μΆκ°ν΄μΌ ν¨
- projects\mysite\common\urls.py νμΌμ μλμ²λΌ νμκ°μ μ μν 맀ν κ·μΉμ μΆκ° --> λ‘κ·ΈμΈ νλ©΄μμ νμκ°μ λ§ν¬λ₯Ό λλ₯΄λ©΄ views.signup ν¨μκ° μ€νλκ² ν¨
# forms.py
- κ³μ μ μμ±ν λ μ¬μ©ν UserFormμ projects\mysite\common\forms.py νμΌμ μλμ²λΌ μμ±
+ django.contrib.auth.forms λͺ¨λμ UserCreationForm ν΄λμ€λ₯Ό μμνμ¬ UserForm λ§λ¦
+ Line 11μ UserCreationForm ν΄λμ€ μμ±
μμ± | μ€λͺ |
username | μ¬μ©μλͺ |
password1 | λΉλ°λ²νΈ 1 |
password2 | λΉλ°λ²νΈ 2 (λΉλ°λ²νΈ 1μ νμΈμ©) |
+ μμν UserCreationForm μ is_valid ν¨μλ₯Ό ν΅ν΄
1. νΌμ μ¬μ©μλͺ , λΉλ°λ²νΈ 1, 2κ° λͺ¨λ μ λ ₯λμλμ§,
2. λΉλ°λ²νΈ 1κ³Ό 2κ° κ°μμ§,
3. μμ±λ λΉλ°λ²νΈ κ°μ΄ λΉλ°λ²νΈ μμ± κ·μΉμ λ§λμ§
λ±μ κ²μ¬
+ Line 7μ email μμ± μΆκ°
# views.py
- projects\mysite\common\views.py νμΌμ νμκ°μ μ μν signup ν¨μλ₯Ό μλμ κ°μ΄ μ μ
+ Line 6μ signup ν¨μ
: POST μμ²μΈ κ²½μ° --> νλ©΄μ μ λ ₯ν λ°μ΄ν°λ‘ μ¬μ©μ μμ±
: GET μμ²μΈ κ²½μ° --> νμκ°μ νλ©΄ μΆλ ₯
+ Line 11,12μ form.cleaned_data.get ν¨μ
: μΈμ¦ν λ μ°μΌ μ¬μ©μλͺ , λΉλ°λ²νΈλ₯Ό μ»κΈ° μν΄ μ¬μ© + νΌμ μ λ ₯κ°μ κ°λ³μ μΌλ‘ μ»κ³ μΆμ λ μ°μ
+ Line 1, 13, 14μ authenticate, login ν¨μ
: django.contrib.auth λͺ¨λμ ν¨μμ΄μ μ¬μ©μ μΈμ¦κ³Ό λ‘κ·ΈμΈμ λ΄λΉνλ ν¨μλ‘, μ κ· μ¬μ©μ μμ± ν μλμΌλ‘ λ‘κ·ΈμΈμ΄ λ μ μκ² νκΈ° μν΄ μ¬μ©
+ Line 1
django.contrib.auth.authenticate --> μ¬μ©μ μΈμ¦ λ΄λΉ + μ¬μ©μλͺ κ³Ό λΉλ°λ²νΈκ° μ ννμ§ νμΈ
django.contrib.auth.login --> λ‘κ·ΈμΈ λ΄λΉ + μ¬μ©μ μΈμ μμ±
# signup.html
- νμκ°μ νλ©΄μ ꡬμ±ν projects\mysite\templates\common\signup.html νμΌμ μλμ κ°μ΄ μμ±
+ << Line 6 >>
form νκ·Έ μλ μ€λ₯ νμλ₯Ό μν form_errors.html ν νλ¦Ώμ include
+ UserForm μ μμ±λ€(μ¬μ©μλͺ , λΉλ°λ²νΈ1, 2, μ΄λ©μΌ)μ ν΄λΉλλ νλλ€μ form νλͺ©μΌλ‘ μΆκ°
# νμκ°μ ν μ€νΈ
1. λ‘컬 μλ²λ₯Ό ꡬλνκ³ http://localhost:8000/ νμ΄μ§ λΆλ¬μ€κΈ° --> νμκ°μ λ²νΌ ν΄λ¦
2. λΉλ°λ²νΈ 1, 2 μ κ°μ λ€λ₯΄κ² μ λ ₯ --> μλμ κ°μ κ²½κ³ λ¬Έκ΅¬ μΆλ ₯
3. μ¬λ°λ₯Έ μ λ ₯κ°μ μ λ ₯νμ¬ κ³μ μμ± --> μλμΌλ‘ λ‘κ·ΈμΈλμ΄μμμ νμΈκ°λ₯
4. κ³μ μ μμ±νκ³ μ΄λλ―Ό νμ΄μ§ http://localhost:8000/admin/ μΌλ‘ μ μ --> νμ¬ μνΌ μ μ κ° μλ λ€λ₯Έ κ³μ μΌλ‘ λ‘κ·ΈμΈλ μν --> μλμ²λΌ κ²½κ³ λ©μμ§ μΆλ ₯
5. μ¬μ©μ μ΄λ¦κ³Ό λΉλ°λ²νΈμ μνΌ μ μ μ μ 보λ₯Ό μ λ ₯νκ³ λ‘κ·ΈμΈ --> νμ μΈμ¦ λ° κΆν νμ΄μ§μμ μλ‘ μμ±λ Baketimer κ³μ νμΈ κ°λ₯
'βοΈ Python Programming > Frameworks' μΉ΄ν κ³ λ¦¬μ λ€λ₯Έ κΈ
< django - 19 > (0) | 2022.08.15 |
---|---|
< django - 18 > (0) | 2022.08.07 |
< django - 16 > (0) | 2022.08.06 |
< django - 15 > (0) | 2022.08.06 |
< django - 14 > (0) | 2022.08.05 |