행위

"파이썬 장고"의 두 판 사이의 차이

DB CAFE

1번째 줄: 1번째 줄:
# 장고
+
= 장고=
## 모듈 구성도
+
== 모듈 구성도==
 
[[파일:장고 모듈 구성도.PNG||왼쪽]]
 
[[파일:장고 모듈 구성도.PNG||왼쪽]]
## 프레임워크 구조   
+
== 프레임워크 구조  ==
 
[[파일:Djanggo.png||가운데]]
 
[[파일:Djanggo.png||가운데]]
## 가상화
+
=== 장고 파일 구조 ===
### source myvenv/bin/activate
+
<source lang=python>
## 프로젝트시작
+
├── db.sqlite3
### django-admin startproject myprj .
+
├── manage.py
## 디렉토리구조
+
├── mysite
### /
+
│  ├── __init__.py
* manage.py
+
│  ├── settings.py
 +
│  ├── urls.py
 +
│  └── wsgi.py
 +
└── app
 +
    ├── __init__.py
 +
    ├── admin.py
 +
    ├── apps.py
 +
    ├── migrations
 +
    │  └── __init__.py
 +
    ├── models.py
 +
    ├── tests.py
 +
    └── views.py
 +
</souce>
 +
 
 +
== 가상화 ==
 +
source myvenv/bin/activate  
 +
 
 +
== 프로젝트시작==
 +
django-admin startproject myprj .
 +
 
 +
== 디렉토리구조 ==
 +
=== manage.py ===
 
     * 사이트 관리  
 
     * 사이트 관리  
 
     * 서버시작
 
     * 서버시작
 
         * python manage.py runserver  
 
         * python manage.py runserver  
 
         * python manage.py runserver 0.0.0.0:8000
 
         * python manage.py runserver 0.0.0.0:8000
### myprj
+
=== settings.py ===
* settings.py
 
 
     * 웹사이트설정
 
     * 웹사이트설정
 
     * TIME_ZONE
 
     * TIME_ZONE
54번째 줄: 74번째 줄:
 
* wsgi.py
 
* wsgi.py
 
* __init__.py
 
* __init__.py
## 어플리케이션생성
+
 
### 명령
+
=== 어플리케이션생성 ===
* python manage.py startapp blog
+
<source lang=python>
* blog
+
python manage.py startapp blog
 +
</python>
 +
<source lang=python>
 +
    * blog  
 
     * migrations
 
     * migrations
 
         * __init__.py
 
         * __init__.py
106번째 줄: 129번째 줄:
 
     * tests.py
 
     * tests.py
 
     * views.py
 
     * views.py
 +
</source>
 
* 장고에 등록하기
 
* 장고에 등록하기
 +
 
[[Category:python]]
 
[[Category:python]]

2021년 6월 9일 (수) 14:20 판

thumb_up 추천메뉴 바로가기


1 장고[편집]

1.1 모듈 구성도[편집]

장고 모듈 구성도.PNG

1.2 프레임워크 구조[편집]

Djanggo.png

1.2.1 장고 파일 구조[편집]

├── db.sqlite3
├── manage.py
├── mysite
│   ├── __init__.py
│   ├── settings.py
│   ├── urls.py
│   └── wsgi.py
└── app
    ├── __init__.py
    ├── admin.py
    ├── apps.py
    ├── migrations
    │   └── __init__.py
    ├── models.py
    ├── tests.py
    └── views.py
</souce>

== 가상화 ==
source myvenv/bin/activate 

== 프로젝트시작==
django-admin startproject myprj .

== 디렉토리구조 ==
=== manage.py ===
    * 사이트 관리 
    * 서버시작
        * python manage.py runserver 
        * python manage.py runserver 0.0.0.0:8000
=== settings.py ===
    * 웹사이트설정
    * TIME_ZONE
        * = 'Asia/Seoul'
    * STATIC_URL
        * = '/static/'
            * 정적파일위치
                * CSS
    * STATIC_ROOT
        * = os.path.join(BASE_DIR,'static')
    * ALLOWED_HOSTS
        * = ''
            * 로컬호스트
            * [::1]
            * 127.0.0.1
        * 배포시
            * ALLOWED_HOSTS
                * = ['127.0.0.1','.xxx.com']
    * MESSAGE_STORAGE
        * 크롬북 사용자 일때
        * = 'django.contrib.messages.storage.session.SessionStorage'
    * DATABASES
        * = {
'default' : {
  'ENGINE': 'django.db.backends.sqlite3','NAME': os.path.join(BASE_DIR, 'db.sqlite3'),
  }
}
        * DB설정
            * python manage.py migrate
                * DB생성 명령
    * INSTALLED_APPS
        * = [ 
......
,blog',
]
* urls.py
* wsgi.py
* __init__.py

=== 어플리케이션생성 ===
<source lang=python>
python manage.py startapp blog
</python>
<source lang=python>
    * blog 
    * migrations
        * __init__.py
    * __init__.py
    * admin.py
    * models.py
        * 데이터모델생성
            * 전체소스...
             * > from django.db import models
             * > from django.utils import timezone
             * > 
             * > 
             * > class Post(models.Model):
             * >     author = models.ForeignKey('auth.User', on_delete=models.CASCADE)
             * >     title = models.CharField(max_length=200)
             * >     text = models.TextField()
             * >     created_date = models.DateTimeField(
             * >             default=timezone.now)
             * >     published_date = models.DateTimeField(
             * >             blank=True, null=True)
             * > 
             * >     def publish(self):
             * >         self.published_date = timezone.now()
             * >         self.save()
             * > 
             * >     def __str__(self):
             * >         return self.title

            * from django.db import models
            * from django.utils import timezone
            * class Post(models.Model):
                *     author = models.ForeignKey('auth.User', on_delete=models.CASCADE)
                    * 저자 컬럼
                *     title = models.CharField(max_length=200)
                    * 타이틀 컬럼
                *     text = models.TextField()
                    * 내용 컬럼
                *     created_date = models.DateTimeField(
            default=timezone.now)
                    * 생성일자 컬럼
                *     published_date = models.DateTimeField(
            blank=True, null=True)
                *     def publish(self):
                    *         self.published_date = timezone.now()
                    *         self.save()
                *     def __str__(self):
                    *         return self.title
    * tests.py
    * views.py
  • 장고에 등록하기