omursahin/project_system

Semester Course endpointi

omursahin opened this issue · 5 comments

semester: ForeignKey - Unique,
course: ForeignKey - Unique,
max_group_size: IntegerField

alanları olan bir model oluşturulmalıdır.


Yetkilendirme Seviyesi

Okuma: Authenticated
Yazma: Superuser

semester = models.ForeignKey(Semester, on_delete=models.CASCADE, unique=True, null=False, blank=True)
Hocam semester ForeignKey kısmını bu şekilde oluşturduk alttaki uyarıya göre mi düzeltelim yoksa bu şekilde mi bırakalım

semester_course.SemesterCourse.course: (fields.W342) Setting unique=True on a ForeignKey has the same effect as using a OneToOneField.
HINT: ForeignKey(unique=True) is usually better served by a OneToOneField.

Uyarıya uygun düzenlemeleri yapsan daha iyi olur gibi duruyor.

İki alanı eş zamanlı unique yapmak için şunu kullanabilirsiniz:

class MyModel(models.Model):
    field1 = models.CharField(max_length=50)
    field2 = models.CharField(max_length=50)
  
    class Meta:
      unique_together = ('field1', 'field2',)

Hocam ForeignKey kullanıp aynı zamanda unique=True verdiğimiz için OneToOneField kullanmamız öneriliyormuş. ForeignKey kullanıp içerisinde unique belirtmeyip Meta sınıfında unique_together ile belirtince sorun çözüldü.

image

Hocam semester eklerken django admin tarafında da bu şekilde hata alıyorum ancak postman kullanarak sıkıntısız ekleyebiliyorum