7. URL ํ๋์ฝ๋ฉ + URL ๋ณ์นญ + URL ๋ค์์คํ์ด์ค
# URL ํ๋์ฝ๋ฉ
: ํด๋น URL์ ๋ํ ์ค์ ๋งํฌ๋ฅผ ์ฌ์ฉํ ๊ฒฝ์ฐ, URL ๋งํฌ์ ๊ตฌ์กฐ ๋ณ๊ฒฝ ์( URL ๋ฆฌํฉํ ๋ง ) ํ ํ๋ฆฟ์์ ์ด ๋ชจ๋ URL๋ค์ ํ๋ํ๋ ์ฐพ์ ์์ ํด์ผ ํ๋ ๋ฌธ์ ๊ฐ ๋ฐ์ --> ๋งํฌ ์ฃผ์๊ฐ 1๋ 1๋ก ๋งคํ๋ ์ํ์ธ ๋ณ์นญ์ ์ฌ์ฉํ์ฌ ํด๊ฒฐ ๊ฐ๋ฅ
# URL ๋ณ์นญ
: URL ๋งคํ์ name ์์ฑ์ ๋ถ์ฌํ๋ฉด ๋งํฌ ์ฃผ์ ๋์ ๋ณ์นญ ์ฌ์ฉ ๊ฐ๋ฅ
- pybo/urls.py ํ์ผ์ ์๋ ๊ฐ์ด ์์
+ http://localhost:8000/pybo/ URL์ index, http://localhost:8000/pybo/2์ ๊ฐ์ URL์๋ detail ์ด๋ผ๋ ๋ณ์นญ ๋ถ์ฌ
# ํ ํ๋ฆฟ์์์ URL ๋ณ์นญ ์ฌ์ฉ
- ์์ ์ฌ์ง์ฒ๋ผ pybo/urls.py ํ์ผ์ ๋ณ์นญ์ ์ถ๊ฐํ๋ฉด ํ ํ๋ฆฟ์์ ์๋์ฒ๋ผ ์ฌ์ฉ ๊ฐ๋ฅ
+ ํ๋์ฝ๋ฉ ๋์ด ์๋ /pybo/{{ question.id }} ๋งํฌ๋ฅผ {% url 'detail' question.id %}๋ก ๋ณ๊ฒฝํจ
+ question.id --> URL ๋งคํ์ ์ ์๋ <int:question_id>์ ์ ๋ฌํด์ผ ํ๋ ๊ฐ
+ ํ๋ผ๋ฏธํฐ๋ช ์ ๋ฌ
ํ ๊ฐ์ ํ๋ผ๋ฏธํฐ๋ฅผ ์ ๋ฌํ ๋ | 2๊ฐ ์ด์์ ํ๋ผ๋ฏธํฐ๋ฅผ ์ ๋ฌํ ๋ |
{% url 'detail' question.id %} + ์๋์ฒ๋ผ ํ๋ผ๋ฏธํฐ๋ช ์ด๋ ๊ฐ์ด ์จ๋ ๋จ {% url 'detail' question_id=question.id %} |
- ์๋์ฒ๋ผ ๊ณต๋ฐฑ๋ฌธ์ ์ดํ์ ๋ถ์ {% url 'detail' question_id=question.id page=2 %} |
# URL ๋ค์์คํ์ด์ค
: ํ๋ก์ ํธ์ pybo ์ฑ์ด ์๋ ๋ค๋ฅธ ์ฑ์ด ์ถ๊ฐ๋์์ ๋, ์๋ก ๋ค๋ฅธ ์ฑ์์ ๋์ผํ URL ๋ณ์นญ์ ์ฌ์ฉํ๊ฒ ๋๋ฉด ์ค๋ณต์ด ๋ฐ์ํ ์ ์์ --> pybo/urls.py ํ์ผ์ ๋ค์์คํ์ด์ค๋ฅผ ์๋ฏธํ๋ app_name ๋ณ์๋ฅผ ์ง์ ํ์ฌ ๋ฌธ์ ํด๊ฒฐ
1. pybo/urls.py ํ์ผ์ app_name์ ์ถ๊ฐ ํ http://localhost:8000/pybo/ ํ์ด์ง ์์ฒญ
3. ์ค๋ฅ ํด๊ฒฐ์ ์ํด ํ ํ๋ฆฟ์์ ์ฌ์ฉํ URL ๋ณ์นญ์์ detail ์์ pybo ๋ผ๋ ๋ค์์คํ์ด์ค๋ฅผ ๋ถ์ฌ์ค
4. ๋ค์ http://localhost:8000/pybo/ ํ์ด์ง๋ฅผ ์์ฒญํ๋ฉด ์ ์์ ์ผ๋ก ์ฒ๋ฆฌ๋จ์ ํ์ธํ ์ ์์
'โ๏ธ Python Programming > Frameworks' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
< django - 9 > (0) | 2022.08.03 |
---|---|
< django - 8 > (0) | 2022.08.01 |
< django - 6 > (0) | 2022.07.30 |
< django - 5 > (0) | 2022.07.30 |
< django - 4 > (0) | 2022.07.29 |