Django

Django 기초 5주차 1_기능 추가_Sparta Coding Club

끈끈 2023. 4. 5. 20:10

 

5주차에서 배울 것

  • input 보완 - 아무 글이 없어도 저장됨
  • 장고 태그 서비스 적용하기
  • Github - 내 프로젝트를 Github에 올려서 관리하기
  • AWS - 나만의 서버 만들어서 접속하기

 


 

회원가입/로그인

 

회원가입 페이지에서 아무것도 적지 않고 회원가입 버튼을 눌렀을 때

 

ValueError : 입력한 값이 잘못되었다

The given username must be set에 주목!

 

ValueError at /sign-up/

 

user/views.py:

  • None을 모두 빈 문자열로 바꿔준다

기존 None으로 UserModel에 값이 들어가고 있어서 에러가 났기 때문

  • 에러가 난 페이지에 어떤 에러인지 전달

 

templates/user/signup.html:

</div>
{% if error %}
    <div class="alert alert-danger" role="alert">
        {{ error }}
    </div>
{% endif %}
<hr>
  • {% if error %} ~ {% endif %}

render 함수에서 html 출력시 'error' 데이터를 함께 넣어주었는지에 대한 조건

따라서 error가 있고 없고에 따라 나타나는 코드이다

 

회원가입 페이지

 

로그인이 안 되는 이유 전달하기

 

user/views.py:

 

templates/user/signin.html:

<hr>
{% if error %}
    <div class="alert alert-danger" role="alert">
        {{ error }}
    </div>
{% endif %}
<div>

 

로그인 페이지

 


 

글쓰기/네비게이션바

 

tweet/views.py:

def tweet 전

def tweet&nbsp;후

 

templates/tweet/home.html:

<hr>
{% if error %}
    <div class="alert alert-danger" role="alert">
        {{ error }}
    </div>
{% endif %}
<div>

 

tweet 페이지

 

상단 네비게이션 '친구' 탭이 로그인시에만 보이기

 

templates/base.html:

{% if user.is_authenticated %}
    <div class="collapse navbar-collapse" id="navbarSupportedContent">
        <ul class="navbar-nav mr-auto">
            <li class="nav-item active">
                <a class="nav-link" href="/user"> 친구 <span class="sr-only"></span></a>
            </li>
        </ul>
    </div>
{% endif %}
  • {% if user.is_authenticated %} ~ {% endif %}

 

로그인 페이지