Django로 웹페이지 만들기

하리브로·2020년 1월 22일
4

Django

목록 보기
2/3

프로젝트 생성 및 준비

1. django-admin startproject <ProjectName> 프로젝트 생성

2. cd <ProjectName> 프로젝트 폴더로 이동

3. python manage.py startapp <AppName> 하위 프로그램(서브 앱) 생성

4. python manage.py migrate DB(sqlite3) 파일 생성

5. python manage.py createsuperuser 관리자 계정 생성

6. python manage.py runserver 서버 실행

환경 설정

프로젝트 이름을 Hahyeong, 서브 앱 이름을 main으로 설정했다

🚩먼저 settings.py 파일 안에 있는 INSTALLED_APPS에서 내가 만든 서브 앱 이름을 추가해야 한다.

🚩 언어를 한국어로 설정하고 (기본은 영어로 되어 있다) 시간대를 한국으로 맞춘다.

🚩 다음은 path를 추가해주는데, <서브앱.urls>를 해주면 된다. url을 분리해준다고 생각하면 된다. 하지만 서브앱 폴더에는 urls라는 파일이 없기 때문에 만들어줘야 한다.

🚩 서브앱 main에서 urls.py라는 파일을 만들어 admin과 path를 import해주면 된다. urlpatterns에는 위에 프로젝트 폴더 urlpatterns와 동일한 문법으로 경로들을 추가해 줄 수 있다.

그럼 이제 본격적으로 페이지를 만들어보자 ❗❕

✅ 먼저 서브앱 main안에 templates라는 폴더를 만들고, 또 그 안에 main(서브앱과 같은 이름의 폴더)이라는 폴더를 만든다.
✅ 그 안에 원하는 이름의 파일을 만들고 코드를 작성하면 된다.

✅ 서브앱 폴더 안에 있는 url.py에서 만든 파일(index)의 경로를 설정해준다. views.py를 꼭 import 해줘야 한다

✅ views에서는 함수를 작성해주는데, return 함수는 꼭 작성해줘야 한다. 그래야 파일 실행이 가능하다.

✅ 서버 실행 함수인 python manage.py runserver를 하면 이렇게 만든 페이지가 뜨는 것을 볼 수 있다.

1개의 댓글

comment-user-thumbnail
2021년 5월 7일

Traceback (most recent call last):
File "C:\project\eduro_web\eduro_app\manage.py", line 21, in
main()
File "C:\project\eduro_web\eduro_app\manage.py", line 17, in main
execute_from_command_line(sys.argv)
File "C:\Users\puleu\AppData\Local\Programs\Python\Python39\lib\site-packages\django\core\management__init.py", line 381, in execute_from_command_line
utility.execute()
File "C:\Users\puleu\AppData\Local\Programs\Python\Python39\lib\site-packages\django\core\management__init
.py", line 375, in execute
self.fetch_command(subcommand).run_from_argv(self.argv)
File "C:\Users\puleu\AppData\Local\Programs\Python\Python39\lib\site-packages\django\core\management\base.py", line 336, in run_from_argv
connections.close_all()
File "C:\Users\puleu\AppData\Local\Programs\Python\Python39\lib\site-packages\django\db\utils.py", line 219, in close_all
for alias in self:
File "C:\Users\puleu\AppData\Local\Programs\Python\Python39\lib\site-packages\django\db\utils.py", line 213, in iter
return iter(self.databases)
File "C:\Users\puleu\AppData\Local\Programs\Python\Python39\lib\site-packages\django\utils\functional.py", line 80, in get
res = instance.dict[self.name] = self.func(instance)
File "C:\Users\puleu\AppData\Local\Programs\Python\Python39\lib\site-packages\django\db\utils.py", line 147, in databases
self._databases = settings.DATABASES
File "C:\Users\puleu\AppData\Local\Programs\Python\Python39\lib\site-packages\django\conf__init.py", line 79, in getattr
self._setup(name)
File "C:\Users\puleu\AppData\Local\Programs\Python\Python39\lib\site-packages\django\conf__init
.py", line 66, in _setup
self._wrapped = Settings(settings_module)
File "C:\Users\puleu\AppData\Local\Programs\Python\Python39\lib\site-packages\django\conf__init.py", line 157, in init
mod = importlib.import_module(self.SETTINGS_MODULE)
File "C:\Users\puleu\AppData\Local\Programs\Python\Python39\lib\importlib__init
.py", line 127, in import_module
return _bootstrap._gcd_import(name[level:], package, level)
File "", line 1030, in _gcd_import
File "", line 1007, in _find_and_load
File "", line 972, in _find_and_load_unlocked
File "", line 228, in _call_with_frames_removed
File "", line 1030, in _gcd_import
File "", line 1007, in _find_and_load
File "", line 984, in _find_and_load_unlocked
ModuleNotFoundError: No module named 'eduro_app'

순서대로 따라한거 같은데 항상 이런 오류가 뜨면서 실행이 안되네요..
어떤게 문제인지 여쭤봐도 될까요?

답글 달기