I want to do something like this...
http://groups.google.com/group/django-users/browse_thread/thread/db03fa90a14ecc6a
...but unfortunately there was no reply to this particular posting.
I've found other posts on the web of people looking for the same sort
of solution, and have not been able to find any helpful answers, so I
was hoping someone here could clear this up.

For example, let's say I had an app that kept a list of books for each
user like this:

class BookList(models.Model):
    user = models.ForeignKey(User)
    book = models.ForeignKey(Book)

class Book(models.Model):
    author = models.ForeignKey(Author)
    name = models.CharField(max_length=300)

class Author(models.Model):
    name = models.CharField(max_length=300)

I had thought that to generate a bunch of forms for BookList (so that
the current user could for example, enter in all of the books that
they've read on a single page), I would use an inlineformset like so:

BookListFormSet = inlineformset_factory(User, BookList)
booklist_formset = BookListFormSet(instance=currentUser)

However, the resulting formset I get results in a dropdown menu for
each book field in the forms, but I don't want that. I want two
TextInput widgets in the form such that the user can type out:
   Alice in Wonderland
   Lewis Carroll
and if some other user has already added "Alice in Wonderland" to
their book list, then BookList.book will just point to that book.  BUT
if this is the first user to add "Alice in Wonderland" to their book
list, I want the form to create a brand new row in the Book table (and
a brand new row in Author if there is no "Lewis Carroll" books yet
either).

I'm new to Django, so maybe the solution is obvious to many.  But like
I said, I'm finding lots of people asking this question, but without
any good answers posted.

If someone could please provide a detailed solution I would very much
appreciate it, and I imagine others would as well.

Thanks in advance.  If any part of what I'm asking isn't clear, don't
hesitate to ask me about it.

-- 
You received this message because you are subscribed to the Google Groups 
"Django users" group.
To post to this group, send email to django-users@googlegroups.com.
To unsubscribe from this group, send email to 
django-users+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/django-users?hl=en.

Reply via email to