PYTHON DANGO를 사용하여 REST API 구축 - 3부 🐍

목차
* 🤓 INTRO
* 🧠 MODELS
* 🖖🏻 HOW DO WE TRANSLATE RELATIONSHIPS
* 💃🏻 MODELS
* 👔 EMPLOYEE MODEL
* 🏢 SECTOR
* 📖 PROJECT
* 💼 EXPOSE MODELS TO ADMIN PANEL
* 👨🏻‍💻 CODE
* 🙏 THANK YOU

🤓 소개

Hello, hackers! I hope you are all having a great weekend, it is a beautiful Sunday, and let's complete this week with another part of the "Building the REST API using Python Django" series.

If you haven't read the previous chapter, it's about setting up the environment and the project.

Please feel free to connect with me via , or

Let's start! 🚀



🧠 모델

We start with an image from the previous post, our ER diagram.



사각형 모양으로 표현된 각 엔터티는 타원형 모양으로 표현되는 특성을 가진 클래스인 모델입니다.

관계는 능형 모양으로 표현되며 모델이 어떻게 관련되어 있는지 결정하는 데 중요합니다.

🖖🏻 관계를 번역하는 방법

ONE-ON-ONE RELATIONSHIPS - For any binary type of relationships let's call it R(1:1) in the ER scheme, we identify the relations S and T that correspond to the entity types participating in the relationship R. We choose one of two relations, let's say relation S, and we include a foreign key that represents a corresponding primary key of the relation T.

ONE-ON-MANY RELATIONSHIPS - For any binary type of relationship let's call it R(1:N) in the ER scheme, we identify relation S that participates on the N side of the relationship. In the S we include the foreign key that corresponds to the primary key of the relation T.

MANY-TO-MANY RELATIONSHIPS - For any binary type of relationship let's call it R(M:N) in the ER scheme, we create a totally new relation P, so-called pivot table. The P includes the foreign keys corresponding to the primary keys of the relations that represent entity types participating in the relationship R.

We have two relationships that correspond to ONE-TO-MANY relationships and only one relationship corresponding to MANY-TO-MANY relationships.

This means that in the EMPLOYEE-SECTOR relationship the corresponding entity type on the N side of the relationship is Employee, which means, it will hold a foreign key to the Sector entity type.

In the SECTOR-PROJECT relationship, the corresponding entity type on the N side of the relationship is the Project entity type, which means, it will hold a foreign key to the Sector entity type.

In the EMPLOYEE-PROJECT relationship, we have a MANY-TO-MANY relationship. This means, that a new table, a pivot table, will be created with the foreign keys corresponding to the primary keys of the Employee and the Project entity type, respectively.

👔 직원 모델

In the models.py we add the following code.



Employee_id - 128비트 숫자로 표시되는 고유 식별자이며, 자체 생성되고 편집할 수 없는 필드입니다.
first_name, middle_name, last_name - 최대 길이가 지정된 문자 필드이며 필수입니다.
성별 - GENDER_CHOICES에 의해 지정된 성별에 대한 선택을 나타내는 문자 필드입니다.
주소 - 주소를 나타내는 문자 필드입니다.
급여 - 소수점이 두 개인 소수점 필드이며 필수입니다.

이제 첫 번째 마이그레이션을 수행해 보겠습니다.

python manage.py makemigrations
python manage.py migrate

마이그레이션 폴더에 다음과 같은 내용이 표시되어야 합니다.

🏢 섹터 모델


📖 프로젝트 모델



다른 마이그레이션을 생성하기 위한 코드를 실행하고 모델을 마이그레이션합니다.

💼 관리자 패널에 모델 노출

In our admin.py we add the following code



서버를 실행하고 브라우저에서 열고 로그인한 다음 관리자 페이지HTTP://127.0.0.1:8000/admin로 리디렉션하고 모델이 노출되는지 확인합니다.

브라우저에 다음이 표시되어야 합니다.


직원, 프로젝트 및 부문을 추가해 보십시오. 원하는 데이터를 추가할 수 있어야 합니다. 🚀

👨🏻‍💻 코드

데블라자95 / PythonDjango튜토리얼


"Python Django를 사용하여 REST API 빌드" 시리즈에 관한 Codespresso Dev.to 튜토리얼의 공식 저장소입니다.





PythonDjango튜토리얼


"Python Django를 사용하여 REST API 빌드"시리즈에 관한 Codespresso Dev.to 튜토리얼의 공식 저장소입니다.

프로젝트 실행 방법


  • PostgreSQL 데이터베이스 설정(이름: 회사)
  • settings.py를 편집하고 DATABASES 이름을 회사에 지정합니다
  • .
  • 이 저장소에서 코드를 가져옵니다
  • .
  • PyCharm에서 열기
  • 터미널을 열고 pip install -r requirements.txt를 실행합니다.
  • python manage.py 마이그레이션 실행
  • python manage.py runserver 실행


  • View on GitHub


    지금은 여기까지입니다. 즐거우셨기를 바랍니다. 다음 장에서는 API용 새 url.py 파일을 설정하고 뷰를 작성합니다. 계속 지켜봐! 👽

    🙏 읽어주셔서 감사합니다!

    References:
    School notes...
    School books...

    Please leave a comment, tell me about you, about your work, comment your thoughts, connect with me!

    ☕ SUPPORT ME AND KEEP ME FOCUSED!


    즐거운 해킹 시간 되세요! 😊

    좋은 웹페이지 즐겨찾기