Sign Up

Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.

Have an account? Sign In

Have an account? Sign In Now

Sign In

Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now

You must login to ask a question.

Forgot Password?

Need An Account, Sign Up Here

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

Sign InSign Up

The Archive Base

The Archive Base Logo The Archive Base Logo

The Archive Base Navigation

  • Home
  • SEARCH
  • About Us
  • Blog
  • Contact Us
Search
Ask A Question

Mobile menu

Close
Ask a Question
  • Home
  • Add group
  • Groups page
  • Feed
  • User Profile
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Buy Points
  • Users
  • Help
  • Buy Theme
  • SEARCH
Home/ Questions/Q 184407
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: May 11, 20262026-05-11T15:17:12+00:00 2026-05-11T15:17:12+00:00

Let’s say I have some contrived models: class Author(Model): name = CharField() class Book(Model):

  • 0

Let’s say I have some contrived models:

class Author(Model):    name = CharField()  class Book(Model):    title = CharField()    author = ForeignKey(Author) 

And let’s say I want to use a ModelForm for Book:

   class BookForm(ModelForm):       class Meta:          model = Book 

Simple so far. But let’s also say that I have a ton of Authors in my database, and I don’t want to have such a long multiple choice field. So, I’d like is to restrict the queryset on the BookForm’s ModelMultipleChoiceField author field. Let’s also say that the queryset I want can’t be chosen until __init__, because it relies on an argument to be passed.

This seems like it might do the trick:

class BookForm(ModelForm):    class Meta:       model = Book     def __init__(self, letter):       # returns the queryset based on the letter       choices = getChoices(letter)       self.author.queryset = choices 

Of course, if that just worked I wouldn’t be here. That gets me an AttributeError. ‘BookForm’ object has no attribute ‘author’. So, I also tried something like this, where I try to override the ModelForm’s default field and then set it later:

class BookForm(ModelForm):    author = ModelMultipleChoiceField(queryset=Author.objects.all())     class Meta:       model = Book     def __init__(self, letter):       choices = getChoices(letter)       self.author.queryset = choices 

Which produces the same result.

Anyone know how this is intended to be done?

  • 1 1 Answer
  • 0 Views
  • 0 Followers
  • 0
Share
  • Facebook
  • Report

Leave an answer
Cancel reply

You must login to add an answer.

Forgot Password?

Need An Account, Sign Up Here

1 Answer

  • Voted
  • Oldest
  • Recent
  • Random
  1. 2026-05-11T15:17:13+00:00Added an answer on May 11, 2026 at 3:17 pm

    Form objects don’t have their fields as attributes, you need to look in the ‘fields’ attribute, which is a dictionary:

    self.fields['author'].queryset = choices 

    If you want to fully understand what’s going on here, you might be interested in this answer – it’s about Models, but Forms work similarly.

    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Ask A Question

Stats

  • Questions 207k
  • Answers 207k
  • Best Answers 0
  • User 1
  • Popular
  • Answers
  • Editorial Team

    How to approach applying for a job at a company ...

    • 7 Answers
  • Editorial Team

    What is a programmer’s life like?

    • 5 Answers
  • Editorial Team

    How to handle personal stress caused by utterly incompetent and ...

    • 5 Answers
  • Editorial Team
    Editorial Team added an answer NetBeans' Matisse is very good and flexible. You can rename… May 12, 2026 at 9:22 pm
  • Editorial Team
    Editorial Team added an answer To access users and groups with their permissions, in .Net… May 12, 2026 at 9:22 pm
  • Editorial Team
    Editorial Team added an answer I modified your code slightly, and I think this has… May 12, 2026 at 9:22 pm

Related Questions

I have a French site that I want to parse, but am running into
Let's say you create a wizard in an HTML form. One button goes back,
Let's say I'm building a data access layer for an application. Typically I have
Let's say you have a class called Customer, which contains the following fields: UserName
Let me try to explain what I need. I have a server that is

Trending Tags

analytics british company computer developers django employee employer english facebook french google interview javascript language life php programmer programs salary

Top Members

Explore

  • Home
  • Add group
  • Groups page
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Users
  • Help
  • SEARCH

Footer

© 2021 The Archive Base. All Rights Reserved
With Love by The Archive Base

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.