52 de afișări
Accesați primul mesaj necitit

frank dilorenzo

necitită,
8 ian. 2024, 14:15:248 ian.
– django...@googlegroups.com
I have 3 models as follows:

from django.db import models
from ckeditor.fields import RichTextField


# Create your models here.
class Species(models.Model):
    scientific_name = models.CharField(max_length=50)
    common_name = models.CharField(max_length=50, null=True, blank=True)
    butterfly_image = models.ImageField(null=True, blank=True, default="default.png")
    # description = models.TextField(max_length=800, null=True, blank=True)
    description = RichTextField(blank=True, null=True, default=None)

    def __str__(self):
        return self.scientific_name

    class Meta:
        ordering = ["scientific_name"]

=========================

from django.db import models


# Create your models here.
class Suppliers(models.Model):
    name = models.CharField(max_length=60, null=True, blank=True)
    phone = models.CharField(max_length=20)
    email = models.EmailField(null=True, blank=True)
    country = models.CharField(max_length=100, null=True, blank=True)
    address = models.CharField(max_length=50, null=True, blank=True)
    city = models.CharField(max_length=100, null=True, blank=True)
    state = models.CharField(max_length=100, null=True, blank=True)
    zipcode = models.CharField(max_length=15, null=True, blank=True)

    class Meta:
        ordering = ("name",)

    def __str__(self):
        return f"{self.name}"

=================

from django.db import models
from suppliers.models import Suppliers
from species.models import Species


# Create your models here.
class Shipments(models.Model):
    yes_no_choice = ((True, "Yes"), (False, "No"))

    name = models.OneToOneField(
        Suppliers, null=True, blank=True, on_delete=models.SET_NULL
    )
    species = models.OneToOneField(
        Species, null=True, blank=True, on_delete=models.SET_NULL
    )
    label = models.CharField(max_length=20)
    received = models.IntegerField(default=0)
    bad = models.IntegerField(default=0, blank=True, null=True)
    non = models.IntegerField(default=0, blank=True, null=True)
    doa = models.IntegerField(default=0, blank=True, null=True)
    para = models.IntegerField(default=0, blank=True, null=True)
    released = models.IntegerField(default=0, blank=True, null=True)
    entered = models.BooleanField(choices=yes_no_choice, default=False)
    updated = models.DateTimeField(auto_now=True)
    created = models.DateTimeField(auto_now_add=True)

    def save(self, *args, **kwargs):
        sub_quantity = self.bad + self.non + self.doa + self.para
        self.released = self.received - sub_quantity

        super().save(*args, **kwargs)

    def __str__(self):
        return str(self.name)

    class Meta:
        ordering = ["-created"]

======================================

I have a form to input shipment information:

{% extends 'base.html' %}
{% block title %}
  Create/Update form
{% endblock title %}
{% block content %}
  <div class="container-fluid pt-3">
    <form action="" method="POST" class="row">
      {% csrf_token %}
      {{ form.as_p }}
      <br>
      <div class="pt-3">
        <a href="{% url 'shipments:list-shipments' %}" class="btn btn-primary">Back</a>
        <input type="submit" value="Submit">
      </div>
    </form>
  </div>
{% endblock content %}

PROBLEM:

  • Shipments with this Name already exists.

 

 

 

 

 

 

 

 

 

 




the supplier can have many species, many labels but if I try to add a shipment with the same name I get an error saying the name already exists. I need help trying to resolve this error.  I am using postgreSQL 16 and it gives me the same error.

I hope I gave you enough information here.  Thank you

frank-

Răspundeți tuturor
Răspundeți autorului
Redirecționați
0 mesaje noi