logo
down
shadow

Will a foreignkey link my two tables in this example?


Will a foreignkey link my two tables in this example?

By : Kunwar
Date : November 17 2020, 11:52 AM


Share : facebook icon twitter icon
Foreignkey-Relation for two tables

Foreignkey-Relation for two tables


By : Fedor Tropin
Date : March 29 2020, 07:55 AM
it helps some times I have the following two tables. , It depends. A person has only one address or more than one ?
How set @ForeignKey jdo tables java

How set @ForeignKey jdo tables java


By : Sam F
Date : March 29 2020, 07:55 AM
I wish did fix the issue. I fail to see how you can have any "foreign keys" in that example since you have no relationships between classes. When you put in some relationships then foreign keys are created for you and the @ForeignKey is only to define the FK "name" and precise constraint details
Django foreignkey and tables one to many relationship

Django foreignkey and tables one to many relationship


By : user12955
Date : March 29 2020, 07:55 AM
I hope this helps . Once you have a Products instance, you also have their related Avg_price. Check this out:
code :
>>> my_product = latest_products[0]
>>> print my_product.avg_price.year
"prints my_product's price's year"
products_prices = Products.objects.all().select_realted('avg_price')
ForeignKey column comes from a lot of tables

ForeignKey column comes from a lot of tables


By : Sarvesh Gawade
Date : March 29 2020, 07:55 AM
seems to work fine Unless you have a good reason, do not combine multiple foreign keys into a single column. As you've already noted it removes the referential integrity of your foreign key.
Either you will risk having a key which could belong to two tables or you have a master table somewhere that you should use as your foreign key reference. It is possible to have a primary key as a foreign key.
Django: ForeignKey linking 2 tables

Django: ForeignKey linking 2 tables


By : user1794986
Date : March 29 2020, 07:55 AM
I think the issue was by ths following , A couple things that would greatly help you:
Utilize PEP8 within your code. For instance, your field names should be all lowercase, as in my example code below. Learn about database normalization. You should almost never see numbered fields (IE: Additional_User_1, Additional_User_2, Additional_User_3) in a database. Ideally, these should be moved to a separate model. Not sure why you are using STATUS_CHOICE and STATUS_CHOICE_1 all over the place. Name these appropriately to what they actually are. Your seem to be a bit confused about your verbose names. Please take a look at how I used the names in my example code below. If you have any questions, please let me know.
code :
from django.db import models

# Create your models here.
from django.contrib.auth.models import User, Group
from django.db import models
from django.core.mail import EmailMessage
from django.contrib import admin

# Create your models here.

class Project(models.Model):
    STATUS_CHOICE = (
       ('Work Assigned', 'Work Assigned'),
       ('Work in Progress', 'Work in Progress'),
       ('Testing', 'Testing'),
       ('Completed', 'Completed')
    )
    project_name = models.CharField(max_length=100)
    project_description = models.CharField(max_length=100)
    status_of_the_project = models.CharField(max_length=18, choices=STATUS_CHOICE)
    created = models.DateTimeField(auto_now_add=True, null=True, blank=True)
    finish_date = models.DateTimeField(null=True, blank=True)
    supporting_documents = models.FileField(null=True, blank=True)
    admin = models.ForeignKey(Person, on_delete=models.CASCADE)

    class FlatPageAdmin(admin.ModelAdmin):
        fieldsets = (
            (None, {
                'fields': ('project_name','project_description','status_of_the_project','created','finish_date','supporting_documents',)
            })
        )

   def __str__(self):
       return self.Project_Name

   class Meta:
       verbose_name = "Project"
       verbose_name_plural = "Projects"


class Person(models.Model):
    PERSON_TYPE = (
        ('Admin', 'Admin'),
        ('Project Manager', 'Project Manager'),
        ('Technician', 'Technician'),
        ('Tester', 'Tester')
    )

    user = models.OneToOneField(User, on_delete=models.CASCADE, related_name='user_person')
    projects = models.ManyToManyField(Project, null=True, related_name='people')
    mail_id = models.EmailField(max_length=50, blank=True, null=True)
    person_type = models.CharField(max_length=18, choices=PERSON_TYPE)

    class Meta:
        verbose_name = "Person"
        verbose_name_plural = "People"


class Bug(models.Model):
    STATUS_CHOICE = (
        ('Unassigned', 'Unassigned'),
        ('Assigned', 'Assigned'),
        ('Testing', 'Testing'),
        ('Tested', 'tested'),
        ('Fixed', 'Fixed')
    )
    SITUATION_TYPE = (
        ('Bug', 'Bug'),
        ('Issue', 'Issue'),
        ('Enhancement', 'Enhancement'),
        ('Not an issue or bug', 'Not an issue or bug'),
        ('Fixed', 'Fixed')
    )

    project = models.ForeignKey(Project, on_delete=models.CASCADE)
    issue_title = models.CharField(max_length=50, blank=True, null=True)
    situation_type = models.CharField(max_length=25, choices=SITUATION_TYPE)
    basic_description = models.CharField(max_length=100)
    detailed_description = models.TextField(default='The Description, here.')
    status = models.CharField(max_length=18, choices=STATUS_CHOICE)
    assigned_to = models.ForeignKey(Person, on_delete=models.CASCADE)
    # assigned_to_mail_ID - this can be pulled from the assigned_to relationship
    # Admin name and ID can be pulled from the project->people relationship
    reported_by = models.CharField(max_length=50, blank=True, null=True)
    reporters_mail_id = models.EmailField(max_length=50, blank=True, null=True)
    reported_date = models.DateTimeField(null=True, blank=True)
    created = models.DateTimeField(auto_now_add=True, null=True, blank=True)
    updated = models.DateTimeField(auto_now=True, null=True, blank=True)
    deadline_date = models.DateTimeField(null=True, blank=True)
    supporting_documents_by_reporter = models.FileField(null=True, blank=True)
    project_managers_comment = models.TextField(default='The Description, here.')
    supporting_documents_by_project_manager = models.FileField(null=True, blank=True)
    technicians_comment = models.TextField(default='The Description, here.')
    supporting_documents_by_technician = models.FileField(null=True, blank=True)
    testers_comment = models.TextField(default='The Description, here.')
    supporting_documents_by_tester = models.FileField(null=True, blank=True)

    def __str__(self):
       return '{} ({})  [{} {}]'.format(self.project, self.situation_type, self.status, self.issue_title)

    def save(self, force_insert=False, force_update=False, using=None,
             update_fields=None):
        if self.id:
           user=self.assigned_to.user
           self.assigned_to.mail_id=user.email
        send_mail(self.project.admin.mail_id, ass=self.assigned_to.mail_id)
        super(Bug, self).save()

    class Meta:
        verbose_name = "Project Task/Issue"
        verbose_name_plural = "Project Tasks/Issues"


def send_mail(admin, ass):
    email=EmailMessage('Changes made to Task','Changes have been made to one of your Task reports and we hereby request you to have a look at it at the earliest.', to=[admin, ass])
    email.send()
Related Posts Related Posts :
  • How do I add a custom button next to a field in Django admin?
  • Bulk, partial updates with Django Rest Framework
  • Resize thumbnails django Heroku, 'backend doesn't support absolute paths'
  • How do you get pyapns (python push notification) working on a mac?
  • Django Haystack - How to force exact attribute match without stemming?
  • Django "with" template tag renders empty for ForeignKey relationship
  • override django admin change_list_results.html per model
  • Django sum a field based on foreign key
  • CommandError: The permission codename 'change_mymodel' clashes with a builtin permission for model 'myapp.MyModel'
  • How do I implement user registration with Django and AngularJS?
  • limit_choices_to in DjangoAdmin
  • how to integrate single sign on from disqus with django allauth
  • Django REST Framework nested relations without related names
  • Is eval Dangerous in Django
  • Django template location with Cloud9
  • django template looping through a list
  • Django deployment 500 server error, nothing in logs
  • Customizing Radio buttons in Django
  • Archiving model data in Django
  • Import app foreign key model class in another app model
  • string less or equal datetime django
  • Empty formset passing validation but not saving records
  • How to arrange fields of a form rendered by ModelForm?
  • Resolve Static URL on Server
  • heroku - DatabaseError: relation "south_migrationhistory" does not exist
  • 'QueryDict' object has no attribute 'GET'
  • How to restore related objects with django-reversion
  • shadow
    Privacy Policy - Terms - Contact Us © ourworld-yourmove.org