๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ

๐Ÿ’ก์›น ํ”„๋กœ์ ํŠธ/(๋ฐฑ์—”๋“œ)Django - ํ”„๋กœ์ ํŠธ01

ํ”„๋กœ์ ํŠธ01. ๋ฉ”๋ชจ ์›น ๊ธฐํšํ•˜๊ธฐ & ๊ธ€ ์ƒ์„ฑ ํผ ๋งŒ๋“ค๊ธฐ

๊ฐ„๋‹จํ•œ ๋ฉ”๋ชจ๋ฅผ ์ž‘์„ฑํ•˜๋Š” ์›น์„ ๊ธฐํšํ•ด๋ณด๊ณ ,

๊ธ€์„ ์ƒ์„ฑํ•˜๋Š” ํผ์„ ๋งŒ๋“ค์–ด๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค.

<์›น ๊ธฐํšํ•˜๊ธฐ> 

๊ฐœ๋ฐœ ๊ณผ์ •

  1. ๊ธ€ ์“ฐ๊ธฐ, ์ˆ˜์ •, ์‚ญ์ œ
  2. ๊ธ€ ๋ชฉ๋ก ๋ณด๊ธฐ
  3. ๋กœ๊ทธ์ธ, ๋กœ๊ทธ์•„์›ƒ, ํšŒ์›๊ฐ€์ž…

 

์›น ์‚ฌ์ดํŠธ ๊ฐ„๋‹จ ํ๋ฆ„๋„

 

<๊ธ€ ์ƒ์„ฑ ํผ ๋งŒ๋“ค๊ธฐ>

URLconf

   ๊ธ€ ๊ด€๋ จ

  • /simp_web/page
  • /simp_web/page/memo
  • /simp_web/page/memo
  • /simp_web/page/memo
  • /simp_web/page/memo

   ๊ธฐํƒ€

  • ๊ณ„์ •๊ด€๋ฆฌ /simp_web/page/memo
  • ํšŒ์›๊ฐ€์ž… /simp_web/page/memo
  • ๋กœ๊ทธ์ธ /simp_web/page/memo

 

(mysite\)urls.py ํŒŒ์ผ ์„ค์ •

from django.contrib import admin
from django.urls import path
from simp_web import views #์ถ”๊ฐ€

from django.conf.urls import include

urlpatterns = [
    path('admin/', admin.site.urls),
    # path('์„ค์ •ํ•  url', views.๋ทฐ ์ด๋ฆ„, name='๋ทฐ ์ด๋ฆ„'),์„ url ๊ฐœ์ˆ˜๋งŒํผ ์ถ”๊ฐ€
    # ๊ธ€ ๊ด€๋ จ url๋ถ€ํ„ฐ ์ถ”๊ฐ€ํ•จ.
    path('simp_web/page', views.page, name='page'),
    path('simp_web/page/memo', views.memo, name='memo'),
    path('simp_web/page/memo/update', views.update, name='update'),
    path('simp_web/page/memo/delete', views.delete, name='delete'),
    path('simp_web/page/memo/create', views.create, name='create'),
]

 

๋ทฐ ๋งŒ๋“ค๊ธฐ views.py : ๋ทฐ๋Š” ๋ชจ๋ธ์— ์ž…๋ ฅํ•œ ํ•„์š”ํ•œ ์ •๋ณด๋ฅผ ํ…œํ”Œ๋ฆฟ์— ์—ฐ๊ฒฐํ•ด์ฃผ๋Š” ์—ญํ• ์„ ํ•œ๋‹ค.

 

๋ทฐ ๊ธฐ๋ณธ ํ˜•์‹

def ๋ทฐ ์ด๋ฆ„(request):
	return render(request, 'simp_web'/ํ…œํ”Œ๋ฆฟ ์ด๋ฆ„.html', {})

 

views.py ํŒŒ์ผ ์„ค์ •

from django.shortcuts import render

# Create your views here.
def page(request):
    return render(request, 'simp_web/page.html', {})

def memo(request):
    return render(request, 'simp_web/memo.html', {})

def update(request):
    return render(request, 'simp_web/update.html', {})

def create(request):
    return render(request, 'simp_web/create.html', {})

def delete(request):
    return render(request, 'simp_web/delete.html', {})

 

๊ธ€ ๊ด€๋ จ ํ…œํ”Œ๋ฆฟ ๋งŒ๋“ค๊ธฐ

  • page.html

<!DOCTYPE html>
<html lang="ko">
<head>
    {% load static %}
    <link rel="stylesheet" href="{% static "admin/css/base.css" %}" />
    <title>{% block title %}simple web{% endblock %}</title>
</head>

<body>
  <div id="sidebar">
        {% block sidebar %}
        <h1><strong>๊ฐ„๋‹จํ•œ ๋ฉ”๋ชจ ์›น์‚ฌ์ดํŠธ</strong></h1>
        <a href="/simp_web/page"><h2>Home</h2></a>
        {% endblock %}
        <br>
    </div>

  <ul>
      <li><a href="page/memo">๊ธ€</a></li>
      <li><a href="page/account">๊ณ„์ •๊ด€๋ฆฌ</a></li>
  </ul>
  <br>

</body>
</html>
  • memo.html

<!DOCTYPE html>
<html lang="ko">
<head>
    {% load static %}
    <link rel="stylesheet" href="{% static "admin/css/base.css" %}" />
    <title>{% block title %}simple web{% endblock %}</title>
</head>

<body>
  <div id="sidebar">
        {% block sidebar %}
        <h1><strong>๊ฐ„๋‹จํ•œ ๋ฉ”๋ชจ ์›น์‚ฌ์ดํŠธ</strong></h1>
        <a href="/simp_web/page"><h2>Home</h2></a>
        {% endblock %}
        <br>
    </div>

  <ul>
      <li><a href="page/memo">๊ธ€</a></li>
      <li><a href="page/account">๊ณ„์ •๊ด€๋ฆฌ</a></li>
  </ul>
  <br>

</body>
</html>
  • update.html
  • delete.html
  • create.html

<!DOCTYPE html>
<html lang="ko">
<head>
    {% load static %}
    <link rel="stylesheet" href="{% static "admin/css/base.css" %}" />
    <title>{% block title %}simple web{% endblock %}</title>
</head>

<body>
  <div id="sidebar">
        {% block sidebar %}
        <h1><strong>๊ฐ„๋‹จํ•œ ๋ฉ”๋ชจ ์›น์‚ฌ์ดํŠธ</strong></h1>
        <a href="/simp_web/page"><h2>Home</h2></a>
        {% endblock %}
        <br>
    </div>

  <ul>
<article>
  # ๊ธ€ ์ž…๋ ฅํ•˜๋Š” ํผ ์ƒ์„ฑ
  <div class="container">
    <form method="POST">
        <h2>๋ฉ”๋ชจ ์ž‘์„ฑ</h2>
          <div>
            <label for="title">์ œ๋ชฉ</label>
            <input type="text" name="title" id="title" placeholder="์ œ๋ชฉ์„ ์ž…๋ ฅํ•ด ์ฃผ์„ธ์š”">
          </div>

          <div>
            <label for="content">๋‚ด์šฉ</label>
            <textarea rows="5" name="content" id="content" placeholder="๋‚ด์šฉ์„ ์ž…๋ ฅํ•ด ์ฃผ์„ธ์š”" ></textarea>
          </div>

         <div >
           <button type="button" id="btnSave">์ €์žฅ</button>
         </div>
    </form>
 </article>
</body>
</html>