본문 바로가기

분류 전체보기

(123)
장고(Django) 모델 만들기. 이제 저만의 모델을 선언할 거에요. - 추가적인 메타데이터가 있는 데이터베이스 레이아웃이 필수적입니다. 철학 모델은 데이터에 대한 단일, 선언적인 소스입니다. 제가 데이터를 저장하는 동작과 필수적인 필드를 포함합니다. 장고는 DRY 원칙(Don't Repeat Yourself)을 따릅니다. 모델의 목표는 데이터 모델을 한 곳에서 정의하고 정의한 곳으로부터 데이터 모델을 파생시키는 것입니다. migrations도 그 중 하나입니다 - Ruby On Rails와 다르게 migrations는 제 모델 파일에서 파생됩니다. 본질적으로 장고가 현재 모델과 일치하도록 데이터베이스 스키마를 업데이트하기 위해 찾아갈 수 있는 기록입니다. 아까 만들었던 간단한 투표 앱에서, 2019/10/11 - [노력/웹 개발] - ..
장고(Django) 데이터베이스 설정 이제 chem/settings.py를 엽니다. 일반적인 파이썬 모듈로 장고 설정을 대표하는 모듈 레벨 변수가 있습니다. 기본적으로는, SQLite를 사용하도록 설정돼있습니다. 데이터베이스를 잘 모르거나 장고에 관심만 있는 수준이라면, 가장 쉬운 설정입니다. SQLite는 파이썬에 포함돼 있으므로, 다른 설정을 할 필요가 전혀 없습니다. 실제 프로젝트를 할 때에는 맞지 않는 데이터베이스입니다. 다른 데이터베이스를 사용하고 싶다면, 적절한 데이터베이스 연결을 다운로드 받고 DATABASES 'default' 키를 내가 사용하는 데이터베이스에 맞게 설정해 주어야 합니다 : ENGINE - 'django.db.backends.sqlite3', 'django.db.backends.postgresql', 'djan..
장고(Django) 첫번째 뷰 쓰기. 첫 번째 뷰를 써봅시다. polls/view.py 파일을 열어서 아래 코드를 넣으세요. # polls/views.py from django.http import HttpResponse def index(request): return HttpResponse("Hello, world. You're at the polls index.") 이게 장고에서 가장 간단하게 뷰를 만드는 방법입니다. 이제 이 뷰를 불러오기 위해서 URL 매핑을 해야합니다. URL 설정을 하기 위해 polls 디렉토리에 urls.py 파일을 만들어줍니다. polls/urls.py에 아래 코드를 입력합니다: # polls/urls.py from django.urls import path from . import views urlpatter..
장고(Django) 투표 앱 만들기. 이제 "프로젝트" 환경이 셋업됐습니다. 이제 제 작업을 할 준비가 된 것입니다. 장고에 쓰이는 각 어플리케이션은 특정 협약을 따르는 python 패키지로 이루어져 있습니다. 장고에는 앱의 기본 디렉토리 구조를 자동으로 생성하는 유틸리티가 제공되므로 디렉토리를 만드는 대신 코드 작성에 집중할 수 있습니다. 프로젝트 vs 앱 프로젝트와 앱의 차이는 뭘까요? 앱은 특정 기능을 하는 웹 어플리케이션입니다. 프로젝트는 설정과 앱의 모음입니다. 프로젝트는 여러 앱을 포함하고 있습니다. 앱도 여러 프로젝트에 있을 수 있습니다. $ python3 manage.py startapp polls 장고 투표 앱을 만들었습니다. 아래와 같은 디렉토리가 생기게 됩니다. 이 디렉토리는 투표 어플리케이션을 저장합니다.
장고(Django) 서버 시작. $ python3 manage.py runserver 파이썬3를 사용해서 개발서버를 시작합니다. 이 서버는 개발 중에만 사용해야합니다. 이제 웹 서버가 시작됐습니다. http://127.0.0.1:8000/을 시작해보세요. "Congratuations! " 웹페이지가 보일겁니다. $ python3 manage.py runserver 8080 위 문장을 활용해서 서버가 8080 포트에서 동작하도록 할 수 있습니다. $ python3 manage.py runserver 0:8080 위 문장을 활용해서 서버가 IP 0의 8080포트에서 동작하게 됩니다. 아래의 스크린샷처럼 동작합니다. 하지만 설정에서 호스트를 아직 허락하게 만들지 않아서 현재까지는 DisallowedHost 에러가 발생합니다.
장고(Django) 최초 설정 장고의 버전을 확인한 다음, 장고 프로젝트를 설정합니다. 최초로 생성된 파일들입니다. chem 폴더 안에 chem 폴더와 manage.py 파일이 있습니다. 장고의 공식 도큐먼트에 따르면, 가장 바깥쪽의 루트 디렉토리 chem/은 컨테이너입니다. 이름도 전혀 중요하지 않습니다. manage.py : command-line 유틸리티이며 장고 프로젝트와 다양한 방법으로 상호작용합니다. 안쪽의 chem/ 디렉토리는 실제 파이썬 패키지입니다. 이 안에 있는 패키지를 import하기 위해서는 chem.urls와 같이 사용합니다. chem/__init__.py : 여기가 파이썬 패키지라는 것을 알려주는 빈 파일입니다. chem/settings.py : 장고 프로젝트의 설정입니다. chem/urls.py : 장고 프..
Git 먼저 설정하고 시작합니다. 먼저 git 설정을 해주어야 한다. 다음과 같이 깃을 설정해 주었다. $ git init 위 코드를 통해서 Chemsolution 폴더를 git 저장소로 초기화해줍니다. $ git status 현재 상태를 파악할 수 있는 git status를 입력해서 git 저장소에 어떤 변화가 있는지 확인한다. 최초의 커밋을 실행했다.
pythonanywhere에서 Error: That port is already in use. 에러 떴을 때 다음과 같은 오류가 발생했습니다. $ ps aux | grep - manage 위 구문을 추천하신 분들이 많았다. 하지만 pythonanywhere에서 ps aux 구문이 전혀 듣지 않았습니다. 위 화면의 리로드를 누르면 해결이 됩니다. pythonanywhere 페이지에서 Web 탭으로 넘어가면 리로드를 할 수 있습니다.