


How to Filter ForeignKey Choices in a Django ModelForm Based on Parent Company?
Nov 25, 2024 pm 12:57 PMFiltering ForeignKey Choices in a Django ModelForm
Suppose you have the following models defined:
class Company(models.Model): name = ... class Rate(models.Model): company = models.ForeignKey(Company) name = ... class Client(models.Model): name = ... company = models.ForeignKey(Company) base_rate = models.ForeignKey(Rate)
The goal is to ensure that when creating a client, the available rate choices are limited to those within the parent company.
In the Django 1.0 forms.py file:
from models import * from django.forms import ModelForm class ClientForm(ModelForm): class Meta: model = Client def __init__(self, company_id, *args, **kwargs): '''Filter the rate choices to only include those for the specified company''' super(ClientForm, self).__init__(*args, **kwargs) self.fields['base_rate'].queryset = Rate.objects.filter(company_id=company_id)
In the views.py:
from django.shortcuts import render_to_response, get_object_or_404 from models import * from forms import * def addclient(request, company_id): the_company = get_object_or_404(Company,>
By filtering the QuerySet assigned to the 'rate' field, the available choices for the 'base_rate' ForeignKey are restricted to the appropriate rates within the specified company.
The above is the detailed content of How to Filter ForeignKey Choices in a Django ModelForm Based on Parent Company?. For more information, please follow other related articles on the PHP Chinese website!

Hot Article

Hot tools Tags

Hot Article

Hot Article Tags

Notepad++7.3.1
Easy-to-use and free code editor

SublimeText3 Chinese version
Chinese version, very easy to use

Zend Studio 13.0.1
Powerful PHP integrated development environment

Dreamweaver CS6
Visual web development tools

SublimeText3 Mac version
God-level code editing software (SublimeText3)

Hot Topics

How to Use Python to Find the Zipf Distribution of a Text File

How Do I Use Beautiful Soup to Parse HTML?

How to Perform Deep Learning with TensorFlow or PyTorch?

Mathematical Modules in Python: Statistics

Introduction to Parallel and Concurrent Programming in Python

Serialization and Deserialization of Python Objects: Part 1

How to Implement Your Own Data Structure in Python
