source

장고: 데이터베이스에 행 삽입

nicesource 2023. 10. 16. 21:54
반응형

장고: 데이터베이스에 행 삽입

장고에 처음 왔습니다.모델을 삽입하여 표를 만들었습니다.models.py.

이제 데이터베이스에 행을 삽입합니다 - 테이블Dodavatel. 속성을 열로 하는 객체를 만들어야 한다는 것을 알고 있습니다.그런데 이 코드를 어디에 넣어야 할지 모르겠어요.models.py?

이것은 제 모델입니다.

class Dodavatel(models.Model):
    nazov = models.CharField(default='', max_length=255)
    dostupnost = models.IntegerField(default=0)

행을 삽입하는 코드는 다음과 같습니다.

p = Dodavatel(nazov='Petr', dostupnost=1)
p.save()

이 코드는 어디에 넣어야 합니까?

모델만 빠르게 테스트하려면 대화형 셸을 시작하고 코드를 실행할 수 있습니다.

python manage.py shell

위 명령어는 당신의 장고 프로젝트 설정으로 초기화된 파이썬 인터랙티브 셸을 시작합니다.

그러면 다음과 같은 작업을 수행할 수 있습니다.

from your_app_name.models import Dodavatel
p = Dodavatel(nazov='Petr', dostupnost=1)
p.save()

저는 뷰 안에서 직접 그 코드를 사용하는 것을 추천하지 않습니다.항목을 만드는 대신 다음과 같은 클래스 기반 뷰를 사용합니다.CreateView.

테이블에 수동으로 데이터를 삽입하여 테스트하는 경우

방법1

enter image description here

데이터베이스에 Dodavatel을 작성하려면 이 명령을 실행합니다.

 python manage.py makemigrations


 python manage.py migrate

enter image description here

이제 데이터베이스에서 생성된 테이블을 볼 수 있습니다.

enter image description here

그런 다음 open python project REPL을 입력합니다.

python manage.py shell

이 코드를 회신에 추가

from everych.cheese.models import Dodavatel

 dodavel = Dodavatel.objects.create(nazov="hi", dostupnost=3)

사용가능python manage.py shell_plus대신에python manage.py shell그래서 당신은 선을 추가하고 싶지 않았습니다.from everych. cheese. models import Dodavatel자동으로 불러옵니다.

여기 제 프로젝트 이름이 있습니다.

치즈는 응용프로그램 이름입니다.

프로젝트 및 응용프로그램 이름으로 변경

enter image description here

위 코드가 실행되면 테이블에 데이터가 삽입됩니다. 출력:- enter image description here

방법2

여기서 데이터만 삽입하면 위 단계를 사용하여 표를 추가해야 합니다.

python manage.py shell_plus

enter image description here 코드를

dat = Dodavatel(nazov="Petr", dostupnost=1)
dat.save()

enter image description here 출력:

enter image description here

언급URL : https://stackoverflow.com/questions/23868958/django-insert-row-into-database

반응형