바뀜

2,127 바이트 추가됨 ,  2022년 4월 26일 (화) 13:57
30번째 줄: 30번째 줄:  
|서버를 돌린 후 <nowiki>http://localhost:8000</nowiki> 으로 들어가 작동이 되는지 확인해본다.
 
|서버를 돌린 후 <nowiki>http://localhost:8000</nowiki> 으로 들어가 작동이 되는지 확인해본다.
 
이게 된다면 기본적인 작동에 대한 문제는 없다.
 
이게 된다면 기본적인 작동에 대한 문제는 없다.
 +
 +
 +
 +
일반적으로 문제없이 잘 되지만, 다음의 에러가 뜨는 경우가 있다.
 +
 +
<code>UnicodeDecodeError: 'utf-8' codec can't decode byte 0xb0 in position 0: invalid start byte</code>
 +
 +
원인은 다양하다.
 +
 +
* 컴퓨터 이름에 영어 외의 문자가 포함된 경우.(네트워크명이 한글인 경우. 보통 네트워크명은 컴퓨터 이름을 따라간다.)
 +
* 경로에 영어 외의 문자가 포함된 경우.(한글이 포함되었는데 될 때도 있다.)
 +
* 원인불명 : 장고를 삭제하고 다시 설치하면 되기도 한다.
 +
 
|}
 
|}
 +
 +
=== 커스텀 유저 등록 ===
 +
초보자에겐 어려우니, 실제 서비스를 만들고자 하는 경우가 아니라 장고의 기능을 익히고자 하는 경우라면 무시해도 좋다. 실제 서비스를 만들고자 한다면 서버작동을 확인한 후 가장 먼저 할 일은 커스텀유저 생성이다.(최대한 앱 이름은 다른 앱과 겹치지 않게 상세히 적자.)
 +
 +
[[회원관리 2. 커스텀유저(AbstractUser 이용)|커스텀유저(AbstractUser 이용)]]
 +
 +
일반적으로 본격적인 프로젝트를 시작하기 전에 만들기가 권장된다. 프로젝트 도중에 모델을 바꾸는 것은 DB의 왜래키나 다대다 관계에 영향을 미치는데, 이를 다시 고치는 일은 꽤 어려운 일이기 때문이다.(중간에 커스텀모델을 추가하는 경우엔 DB자체를 지우고, 다시 구성한다.) 장고의 의존성 특성 때문에 최초의 DB에 생성되어 포함되어야 한다.
    
=== 관리자 등록 ===
 
=== 관리자 등록 ===
57번째 줄: 77번째 줄:  
=== 앱 이름은 특이하게 짓기 ===
 
=== 앱 이름은 특이하게 짓기 ===
 
주로 앱 이름을 account나 profile 등으로 만드는 경우가 있는데... 장고와 연동된 라이브러리에서 저런 일반적인 이름을 차지해버리는 경우가 있다. 이렇게 이름이 겹쳐버리면.. 차라리 처음부터 만드는 게 나을 정도로 복잡해진다. 때문에 처음부터 앱 이름을 구체적이고 특이하게 만드는 편이 좋다.
 
주로 앱 이름을 account나 profile 등으로 만드는 경우가 있는데... 장고와 연동된 라이브러리에서 저런 일반적인 이름을 차지해버리는 경우가 있다. 이렇게 이름이 겹쳐버리면.. 차라리 처음부터 만드는 게 나을 정도로 복잡해진다. 때문에 처음부터 앱 이름을 구체적이고 특이하게 만드는 편이 좋다.
 +
 +
==== 앱 이름 바꾸기 ====
 +
나중에 앱 이름을 바꾸려면 각 파일 안의 앱 이름 뿐 아니라 앱 디렉토리 이름도 바꾸어야 하고, DB에도 변형을 가해주어야 한다. 꽤 귀찮고, 무엇보다 미숙하면 DB가 망가질 수도 있는 일이기에 권하지 않는다. 그래도 바꾸어야 한다면..
 +
 +
# 각각의 파일 안에서 사용하는 앱 이름을 새 앱의 이름으로 모두 바꾸고,
 +
# 앱 디렉터리 이름, 파일 이름(migrations 안의 파일들)을 바꾸고,
 +
# DB에서 사용되는 테이블 이름을 모두 바꾸어주어야 한다.
    
=== 앱 만들기 과정 ===
 
=== 앱 만들기 과정 ===