Django 모델 외래 키 또는 charfield?

리키

내가 만들고 싶은 Django Model과 Form

안녕하세요. 저는 Django를 처음 접했고 어떤 모델 필드를 사용해야 하는지 이해하기 어렵습니다. 내 코드가 지금 너무 지저분하고 대부분이 여전히 William S. Vincent의 "Django for Beginner" 책을 따르고 있기 때문에 코드를 게시하지 않았습니다.

Product모델과 모델 의 2가지 모델로 구성된 앱이 있습니다 Production. 생산 모델의 일부 필드는 제품 모델에 연결됩니다. 그런 다음 프로덕션 모델에서 를 사용하여 사용자 입력을 위한 양식을 만듭니다 ModelForm. (모델의 이해와 관계 형성을 돕기 위한 이미지 링크가 있습니다.)

이 문제에 대해 몇 가지 질문이 있습니다.

  1. 모델을 으로 설정하면 product_id어떤 필드 에 사용해야 합니까?ProductionForeignKeyProductproduct_namematerial
  2. and CharField모두에 사용할 때 and on form 모두에 대한 항목이 있고 그것을 원하지 않습니다. 읽기 전용으로 변경하고 값을 기반으로 업데이트하는 방법은 무엇입니까? (이것이 Django 형식과 관련이 있는지 확실하지 않습니다.)product_namematerialproduct_namematerialproduct_id
  3. 지금은 양식을 만드는 데 사용 하고 ModelForm양식 을 렌더링하는 데 사용하고 있습니다. 올바른 접근 방식입니까? 이들모델 그리고 모델의 차이점은 무엇인가요 ?ProductionFormViewCreateView

모든 의견과 답변에 미리 감사드립니다.

마크워커_

제품 모델에 이름과 재료가 있는 경우 프로덕션 개체와 관련이 없는 한 프로덕션 모델에는 필요하지 않습니다. 내가 당신이라면 Production제품에 대한 외래 키를 가질 것입니다. 다음과 같이 보일 수 있습니다.

class Production(models.Model):
    product = models.ForeignKey(
        to=Product,
        verbose_name=_("Product"),
        on_delete=models.CASCADE
    )
    machine = models.CharField(
        verbose_name=_("Machine No"),
        max_length=255
    )
    date = models.DateTimeField(
        verbose_name=_("Date"),
        blank=True,
        null=True
    )

그러면 귀하의 양식은 다음과 같을 수 있습니다.

class ProductionForm(forms.ModelForm):
    class Meta:
        model = Production

        fields = (
            'product',
            'machine',
            'date',
        )

보기 작업을 시작하기 전에 django 관리자를 사용하여 원하는 대로 모델을 가져오는 것이 좋습니다. 데이터가 필요한 방식으로 저장되고 있다는 것을 알고 있다면 프론트엔드 구축에 대해 걱정할 수 있습니다. 관리자는 당신이 가지고 있는 책의 약 70페이지에 있습니다. 이를 사용하여 읽기 전용 필드를 수행할 수도 있습니다.

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

Django 모델 CharField에서 외래 키 소개

외래 키 Django 모델

django에서 외래 키 모델에 대한 필터 또는 집계 또는 주석을 실행하는 방법

Django 모델에서 외래 키가있는 중복 값

다른 모델의 외래 키가있는 DJango queryset 필터

외래 키가 있는 모델의 Django 페이지 매김

외래 키로 Django 모델 상속을 설정하는 방법

외래 키를 통해 자식 모델을 검색하는 Django

django의 여러 외래 키가있는 모델의 양식

외래 키가있는 Django CRUD 업데이트 모델

외래 키 모델 목록을 가져오는 Django 필터

csv의 외래 키로 django 모델을 채우는 방법

Django 모델의 외래 키 배열

Django : 두 모델에 대한 외래 키

외래 키 Django로 모델 직렬화

Django 모델 쿼리 외래 키 관계

Django 모델 : 외래 키의 고유 값

Django 모델 외래 키, 필터링?

Django 외래 키 관계는 사용자 대 사용자 또는 모델 대 사용자여야 합니까?

Django는 모델의 모든 외래 키 이름을 얻습니다.

모델 생성시 외래 키로 모델 자동 생성-Django

Django - 외래 키 모델을 사용하는 데 문제가 있습니다.

필드의 모델 유형을 일반 외래 키로 저장하는 DJANGO

Django: 모델에서 사용자를 외래 키로 추가하는 방법

Django (모델) : 외래 키에서 인스턴스를 가져 오는 방법

DJango에서 다른 모델과 외래키를 사용하는 방법

조회 필드가있는 중첩 된 모델 외래 키에 대한 Django JOIN

Django 모델에는 외래 키 개체 집합이 없습니다.

Django는 모델의 특정 필드를 외래 키로 반환합니다.

TOP 리스트

  1. 1

    JNDI를 사용하여 Spring Boot에서 다중 데이터 소스 구성

  2. 2

    std :: regex의 일관성없는 동작

  3. 3

    JSoup javax.net.ssl.SSLHandshakeException : <url>과 일치하는 주체 대체 DNS 이름이 없습니다.

  4. 4

    PrematureCloseException : 연결이 너무 일찍 닫혔습니다.

  5. 5

    Xcode10 유효성 검사 : 이미지에 투명성이 없지만 여전히 수락되지 않습니까?

  6. 6

    정점 셰이더에서 카메라에서 개체까지의 XY 거리

  7. 7

    Ionic 2 로더가 적시에 표시되지 않음

  8. 8

    Seaborn에서 축 제목 숨기기

  9. 9

    C #에서 'System.DBNull'형식의 개체를 'System.String'형식으로 캐스팅 할 수 없습니다.

  10. 10

    복사 / 붙여 넣기 비활성화

  11. 11

    ArrayBufferLike의 typescript 정의의 깊은 의미

  12. 12

    Google Play Console에서 '예기치 않은 오류가 발생했습니다. 나중에 다시 시도해주세요. (7100000)'오류를 수정하는 방법은 무엇입니까?

  13. 13

    Kubernetes Horizontal Pod Autoscaler (HPA) 테스트

  14. 14

    jfreecharts에서 x 및 y 축 선을 조정하는 방법

  15. 15

    PRNG 기간보다 순열이 더 많은 목록을 무작위로 섞는 방법은 무엇입니까?

  16. 16

    C # HttpWebRequest 기본 연결이 닫혔습니다. 전송시 예기치 않은 오류가 발생했습니다.

  17. 17

    다음 컨트롤이 추가되었지만 사용할 수 없습니다.

  18. 18

    잘못된 구성 개체입니다. Webpack이 Angular의 API 스키마와 일치하지 않는 구성 개체를 사용하여 초기화되었습니다.

  19. 19

    Android Kotlin은 다른 활동에서 함수를 호출합니다.

  20. 20

    R의 마침표와 숫자 사이에 문자열 삽입

  21. 21

    Assets의 BitmapFactory.decodeStream이 Android 7에서 null을 반환합니다.

뜨겁다태그

보관