본문 바로가기

백/django

MBIT 장고-2

Database seeding

모델에 요소 추가하는 법 : 1. 관리자 페이지에서 추가 / 2. 장고 shell에서 추가/ 3. loaddata와 dumpdata 명령어 사용

-> 1.2는 일일이 저장하는 방식이라 데이터가 많아지면 번거로움

따라서 많은 데이터를 저장할 땐 3 방식을 쓴다!

1. : models.py 내용을 admin.py에 가져와야 한다.

3. json: 자바스크립트의 object로 쓰이고 있는 key와 value

 

<템플릿 적용하기>

vscode에서 만든 프론트엔드 form.html, index.html, result.html 파일들에 템플릿 태그들을 입힌 후에 templates로 이동시켜함 -> {% load static %} 달기 ( index.html에서 css를 css 폴더에서 가져오는 게 아니라서)

 

index.html

 <div class="data_wrap">
        <h3>참여자 수</h3>
        <ul>
            <li>백엔드 개발자 : 0명</li>
            <li>프론트엔드 개발자 : 0명</li>
            <li>데이터 분석과 인공지능 : 0명</li>
            <li>정보보안 : 0명</li>
            <li>게임 개발 : 0명</li>
        </ul>
    </div>

frontend 작업하면서 적은 위와 같은 코드를 backend에서 model의 data이용해 표현한 형식으로 바꾸기

               <div class="data_wrap">
                    <h3>참여자 수</h3>
                    <ul>
                        <li>{% for developer in developers %}
                            <p>
                                {{developer.name}} : {{developer.count}}명
                            </p>
                            {% endfor %}
                        </li>
                        
                    </ul>
                </div>

 

<form.html>

- 기존

<div class="btn_wrap">
 <button class="next_btn">다 음</button>
 </div>
<div class="btn_wrap btn_sort">
                        <button class="prev_btn">이 전</button>
                        <button class="next_btn">다 음</button>
                    </div>
<div class="btn_wrap btn_sort">
<input type="submit" value="제출" class="submit_btn">
</div>

데이터들을 변수와 for,if 태그를 이용해 채워주기!

- 바꾼 후

    	{% if not forloop.first %}
                        <div class="btn_wrap btn_sort">
                    {% else %}
                        <div class="btn_wrap">
                    {% endif %}
                    {% if not forloop.first %}
                        <button class="prev_btn">이전</button>
                    {% endif %}
                    {% if not forloop.last %}
                        <button class="next_btn">다음</button>
                    {% else %}
                        <input type="submit" value="제출" class="submit_btn">
                    {% endif %}

오류 정리

-가상환경 실행 안시키고 명령어 입력했던 걸 나중에 알아차림

2. Question으로 받아야하는데 Questions로 받음 -> no attribute error 뜸 (model에 Question으로 정의 but view에서 Questions.get.objects 입력함...

' > django' 카테고리의 다른 글

MBIT 장고-3  (0) 2023.10.13
MBIT 장고-1  (0) 2023.10.05