form_for_model(IDInternal) will autogenerate form elemnts to edit the model
class ImageAddForm(BaseForm):
def __init__(self, *args, name=None, **kwargs):
super(ImageAddForm, self).__init__(*args, **kwargs)
self.fields['category'].choices=(('a','a'),)
# create filter based on name=
ImageForm = form_for_model(Image, form=ImageAddForm)
foo = ImageForm(name='foo')
To get from draft to author list:
>>> d = a[5]
>>> print d
draft-fenner-zinin-rtg-standard-reqts
>>> print d.authors.all()
[<IDAuthors: IDAuthors object>, <IDAuthors: IDAuthors object>]
>>> l=d.authors.all()
>>> print l[0].person
Bill Fenner
>>> print l[0].person.emailaddresses_set.filter(priority=d.id_document_tag)
[<EmailAddresses: EmailAddresses object>]
>>> print l[0].person.emailaddresses_set.filter(priority=d.id_document_tag)[0].ail_address
fenner@research.att.com
IDAuthors should have an auxilliary function for this.
It's the one that has the person linkage and knows the document.
--
we should use a variant of django-registration.
http://www.stonemind.net/blog/2007/04/13/django-registration-for-newbies/
1. verify email address with round trip
2. if there's a row in iesg_login, use that username
(? liaison tool logins ?)
otherwise, force the email address
3. get a password and create the user
(this is almost the same as resetting the password)
4. find the person_or_org_info row, associate that with
the user row
--
<ubernostrum> Both the regular and date-base object_detail can take either an
+object_id, or a slug/slug_field combo.
<ubernostrum> So use the username as the "slug" and specify 'username' as the
+'slug_field' argument.
http://www.b-list.org/weblog/2006/11/16/django-tips-get-most-out-generic-views
newly learned: 'slug_field' just gets passed so can be otherdb__username