Django ORM을 독립형으로 사용
중복 가능성 :
Django의 일부만 사용합니까?
Django의 DB 부분 만 사용
Django ORM을 독립형으로 사용하고 싶습니다. 한 시간 동안 Google을 검색했지만 여전히 몇 가지 질문이 남아 있습니다.
- setting.py, / myApp / 디렉토리 및 modules.py 파일을 사용하여 Python 프로젝트를 설정해야합니까?
- 테이블과 관계를 자동으로 설정하도록 새로
models.py
만들고 실행할syncdb
수 있습니까? 아니면 기존 Django 프로젝트의 모델 만 사용할 수 있습니까? - 에 관한 질문이 많은 것 같습니다
PYTHONPATH
. 기존 모델을 호출하지 않는 경우 이것이 필요합니까?
가장 쉬운 방법은 누군가가 기본 템플릿이나 프로세스의 연습을 게시하여 파일의 구성을 명확히하는 것입니다. 예 :
db/
__init__.py
settings.py
myScript.py
orm/
__init__.py
models.py
기본 필수 사항 :
# settings.py
from django.conf import settings
settings.configure(
DATABASE_ENGINE = "postgresql_psycopg2",
DATABASE_HOST = "localhost",
DATABASE_NAME = "dbName",
DATABASE_USER = "user",
DATABASE_PASSWORD = "pass",
DATABASE_PORT = "5432"
)
# orm/models.py
# ...
# myScript.py
# import models..
다음과 같은 것을 실행해야하는지 여부 : django-admin.py inspectdb
...
(오, 명령 줄 인수와 관련하여 변경된 사항이 있으면 Windows를 실행하고 있습니다.)
아 그래 나는 그것을 알아 냈고 같은 일을 시도하는 모든 사람을 위해 솔루션을 게시 할 것입니다.
이 솔루션은 새 모델을 작성하려고한다고 가정합니다.
먼저 파일을 저장할 새 폴더를 만듭니다. 이것을 "standAlone"이라고 부를 것입니다. "standAlone"내에서 다음 파일을 만듭니다.
__init__.py
myScript.py
settings.py
분명히 "myScript.py"는 무엇이든 이름을 지정할 수 있습니다.
다음으로 모델에 대한 디렉토리를 만듭니다.
모델 디렉토리의 이름을 "myApp"으로 지정하지만 이것이 프로젝트 내에서 일반적인 Django 애플리케이션이라는 것을 인식하고 작성중인 모델 컬렉션에 적절하게 이름을 지정합니다.
이 디렉토리 내에 2 개의 파일을 만듭니다.
__init__.py
models.py
기존 Django 프로젝트에서 manage.py 사본이 필요하거나 Django 설치 경로에서 사본을 가져올 수 있습니다.
django\conf\project_template\manage.py
manage.py를 / standAlone 디렉토리에 복사하십시오. 이제 다음과 같은 구조가 있어야합니다.
\standAlone
__init__.py
myScript.py
manage.py
settings.py
\myApp
__init__.py
models.py
myScript.py 파일에 다음을 추가합니다.
# settings.py
from django.conf import settings
settings.configure(
DATABASE_ENGINE = "postgresql_psycopg2",
DATABASE_NAME = "myDatabase",
DATABASE_USER = "myUsername",
DATABASE_PASSWORD = "myPassword",
DATABASE_HOST = "localhost",
DATABASE_PORT = "5432",
INSTALLED_APPS = ("myApp")
)
from django.db import models
from myApp.models import *
다음을 settings.py 파일에 추가하십시오.
DATABASE_ENGINE = "postgresql_psycopg2"
DATABASE_NAME = "myDatabase"
DATABASE_USER = "myUsername"
DATABASE_PASSWORD = "myPassword"
DATABASE_HOST = "localhost"
DATABASE_PORT = "5432",
INSTALLED_APPS = ("myApp")
마지막으로 myApp / models.py :
# myApp/models.py
from django.db import models
class MyModel(models.Model):
field = models.CharField(max_length=255)
그리고 그게 다야. 이제 Django가 데이터베이스를 관리하도록하려면 명령 프롬프트에서 / standalone 디렉터리로 이동하고 다음을 실행합니다.
manage.py sql MyApp
참조 URL : https://stackoverflow.com/questions/937742/use-django-orm-as-standalone
'Development Tip' 카테고리의 다른 글
CORS 오류를 트랩 할 수 있습니까? (0) | 2020.12.31 |
---|---|
Android-이미지 파일 크기 줄이기 (0) | 2020.12.31 |
SVG 경로를 따라 그라디언트를 적용 할 수 있습니까? (0) | 2020.12.31 |
git : safecrlf를 비활성화하지 않고 "경고 : CRLF가 LF로 대체됩니다"를 제거하려면 어떻게해야합니까? (0) | 2020.12.31 |
디버거가 비동기 메서드에서 예외를 중단 / 중지하지 않음 (0) | 2020.12.31 |