So this is how I'm creating the staff form:

def staff_info(request, *args, **kws):
    class StaffForm(forms.ModelForm):
        class Meta:
          model= Staff
          ....
          ....
          ....
 if request.method == 'POST' and request.POST['event'] ==
'choosestaff':
current_staff =
request.POST.get('selectstaff')
elif request.method == 'POST' and request.POST['event'] ==
'editstaff':
#print
request
current_staff =
request.POST.get('username')
errors =
validate_staff(request)
if errors is not None and len(errors) ==
0:
print
request.POST
staffinstance = Staff.objects.using('gold').get(username =
current_staff)
#new_form =
StaffForm(instance=staffinstance)
#print
new_form
staff_form = StaffForm(request.POST,
instance=staffinstance).using('gold')
staff_form.last_modification_time =
datetime.now()
staff_form.supervisor =
staffinstance.supervisor
staff_form.start_date =
staffinstance.start_date
            staff_form.creation_time =
staffinstance.creation_time
            staff_form.termination_date =
staffinstance.termination_date
           staff_form.using('gold').save()
 
else:
        current_staff =
request.user.username
    tg_info,staff, nics_info =
get_tg_info(current_staff)

    groups =
NICSGroupType.objects.using('gold').all()
    form = StaffForm(instance =
Staff.objects.using('gold').select_related().get(username =
current_staff))
    print
form
    return render_to_response('staff/staffinfo.html',{'form':form,
'tginfo':tg_info, 'nicsinfo': nics_info, 'staff':staff,
'is_admin':is_admin, 'errors':errors},context_instance =
RequestContext(request))


Funny thing is that this worked perfectly in version 1.1a of django.
All trouble started when I switched to 1.3. I was using extDbManager
to create the gold connection in the 1.1 version since 'gold' is a non-
default db (used only for this model) and 1.1 only had in built
support for a single db.

And yes, I do have a page for the view. Problem is that it is passcode
protected and I don't think I'm at liberty to give you access to it. :
(

Tabitha
On Nov 4, 10:44 am, Mark Furbee <markfur...@gmail.com> wrote:
> Good Morning Tabitha.
>
> Actually, do you have a model for StaffForm? That is the object being
> instantiated and then causing the error. If there is no nics group
> reference field in the StaffForm object, it may raise this error. Also, do
> you have this running in a view/template? Do you have a real page that
> you've tried this on, or have you just tried it in the shell?
>
> Thanks,
>
> Furbee
>
> On Fri, Nov 4, 2011 at 7:02 AM, Tabitha Samuel 
> <tabitha.sam...@gmail.com>wrote:
>
>
>
>
>
>
>
> > Here is staff/models.py
>
> > from django.db import models
>
> > class NICSGroupType(models.Model):
> >    n_group_number = models.IntegerField(primary_key = True)
> >    n_group_name = models.CharField(max_length = 512)
> >     def __str__(self):
> >        return self.n_group_name
> >     class Meta:
> >        db_table = "n_nics_groups"
>
> > class StaffpageAdmin(models.Model):
> >    n_id                        = models.IntegerField(primary_key =
> > True)
> >    n_username                  = models.CharField(max_length = 50)
> >    class Meta:
> >        db_table = 'n_staffpage_admin'
>
> > class Staff(models.Model):
> >    username                    = models.CharField(primary_key = True,
> > max_length = 50)
> >    home_phone                  = models.CharField(max_length = 12,
> > null=True)
> >    cell_phone                  = models.CharField(max_length = 12,
> > null = True)
> >    home_address                = models.CharField(max_length = 1024,
> > null = True)
> >    home_city                   = models.CharField(max_length = 64,
> > null = True)
> >    home_state                  = models.CharField(max_length = 32,
> > null = True)
> >    home_zip                    = models.CharField(max_length = 10,
> > null = True)
> >    emergency_name              = models.CharField(max_length =64,
> > null = True)
> >    emergency_phone             = models.CharField(max_length = 12,
> > null = True)
> >    nics_group                  = models.ForeignKey(NICSGroupType,
> > to_field="n_group_number",db_column="nics_group",
> > null=True,blank=True)
> >    room_number                 = models.CharField(max_length = 32,
> > null = True)
> >    title                       = models.CharField(max_length = 64)
> >    supervisor                  = models.CharField(max_length = 25,
> > null = True, blank = True)
> >    url                         = models.CharField(max_length =
> > 256,null = True, blank = True)
> >    im                          = models.CharField(max_length = 32,
> > null = True, blank=True)
> >    last_modification_time      = models.IntegerField()
> >    start_date                  = models.IntegerField()
> >    creation_time               = models.IntegerField()
> >    termination_date            = models.IntegerField(null = True,
> > blank = True)
> >    bio                         = models.TextField()
> >    photopath                   = models.CharField(max_length = 5048)
> >    office_phone                = models.CharField(max_length=12)
> >    email                       = models.CharField(max_length = 256)
> >    preferred_name              = models.CharField(max_length = 50,
> > null = True, blank = True)
> >    deleted                     = models.BooleanField(default = False)
> >    viewable                    = models.BooleanField(default = True)
>
> >    class Meta:
> >        db_table = "n_test_staff"
>
> > class TG_Staff(models.Model):
> >    g_name                      = models.CharField(primary_key = True,
> > max_length = 1024)
> >    g_modification_time         = models.IntegerField()
> >    g_active                    = models.CharField(max_length = 5)
> >    g_common_name               = models.CharField(max_length = 1024)
> >    g_phone_number              = models.CharField(max_length = 1024)
> >    g_default_project           = models.CharField(max_length = 1024)
> >    g_office_address            = models.CharField(max_length = 1024)
> >    g_bz_phone                  = models.CharField(max_length = 1024)
> >    g_bz_phone_ext              = models.CharField(max_length = 1024)
> >    g_citizenship               = models.CharField(max_length = 1024)
> >    g_street_address            = models.CharField(max_length = 1024)
> >    g_street_address2           = models.CharField(max_length = 1024)
> >    g_city                      = models.CharField(max_length = 1024)
> >    g_state                     = models.CharField(max_length = 1024)
> >    g_zip                       = models.CharField(max_length = 1024)
> >    g_country                   = models.CharField(max_length = 1024)
> >    g_dept                      = models.CharField(max_length = 1024)
> >    g_tg_person_id              = models.CharField(max_length = 1024)
> >    g_org                       = models.CharField(max_length = 1024)
> >    g_position                  = models.CharField(max_length = 1024)
> >    g_home_phone                = models.CharField(max_length = 1024)
> >    g_fax                       = models.CharField(max_length = 1024)
> >    g_ldap_id                   = models.IntegerField()
> >    g_email_address             = models.CharField(max_length = 1024)
>
> >    class Meta:
> >        db_table = "g_user"
>
> > Is this what you needed?
>
> > Tabitha
>
> > On Nov 4, 2:00 am, Furbee <furbeena...@gmail.com> wrote:
> > > Hi Tabitha,
>
> > > I wish I could supply a quick and simple answer to fix what's going on in
> > > your database, but nothing obvious is standing out. Can you supply your
> > > model for StaffForm? That seems to be where the problem lies, since we
> > can
> > > get details from the model and view elsewhere.
>
> > > Thanks,
>
> > > Furbee
>
> > > On Thu, Nov 3, 2011 at 7:22 PM, Tabitha Samuel <tabitha.sam...@gmail.com
> > >wrote:
>
> > > > K, so that worked...
>
> > > > This is what I got:
> > > > In [5]: i = Staff.objects.using('gold').get(username='tsamuel')
>
> > > > In [6]: i.nics_group.n_group_name
> > > > Out[6]: u'Systems and Operations'
>
> > > > Looks like the foreign key is working fine from the db's perspective.
> > > > This is how I'm getting the form:
> > > > form = StaffForm(instance = Staff.objects.using('gold').get(username
> > > > =current_staff))
> > > > where current_staff = 'tsamuel'
> > > > and then if I do a print form, I get a relation n_nics_groups does not
> > > > exist error.
>
> > > > Once again, thank you so much for your help, I really appreciate it!
>
> > > > Tabitha
>
> > > > On Nov 3, 1:26 pm, Furbee <furbeena...@gmail.com> wrote:
> > > > > I may have lead you astray. I set up the same models on my end and
> > get
> > > > the
> > > > > same query; it didn't show the join of the foreign key in the
> > QuerySet of
> > > > > Staff, but when I did a get() on username='tsamuel' I got a Staff
> > object.
> > > > > Then I was able to get the group they belonged to. This was
> > successful
> > > > for
> > > > > me:
>
> > > > > Here's my data:
>
> > > > > table: n_nics_groups
> > > > > n_group_number; n_group_name
> > > > > 1; "TestGroup1"
> > > > > 2; "TestGroup2"
> > > > > 3; "TestGroup3"
>
> > > > > table: n_test_staff
>
> > "tfigura";"";"";"";"";"";"";"";"";2;"";"''";"";"";"";1;1;1;;"''";"''";"''";"''";"";FALSE;TRUE
>
> > "tsamuel";"";"";"";"";"";"";"";"";1;"";"''";"";"";"";1;1;1;;"''";"''";"''";"''";"''";FALSE;TRUE
>
> > > > > 'tfigura' is in group with n_group_number 2, tsamuel is in group with
> > > > > n_group_number 1.
>
> > > > > python manage.py shell:
>
> > > > > >>> from project.models import NICSGroupType, Staff
> > > > > >>> i = Staff.objects.get(username='tsamuel')
> > > > > >>> i.nics_group.n_group_name
> > > > > >>> u'TestGroup1'
>
> > > > > Is this operational for your instance? If not, I would double check
> > that
> > > > > the n_nics_groups table definitely exists in the datasource you
> > defined
> > > > as
> > > > > 'gold.' This should be defined in the DATABASES section of
> > settings.py.
> > > > It
> > > > > looks like it is the database 'public' from your example, but double
> > > > check
> > > > > that the 'gold' DATABASE points there.
>
> > > > > Otherwise, I wonder if it is somewhere where you are defining the
> > form
> > > > > object. First, let's verify that the foreign key reference is being
> > > > honored
> > > > > on your system, by running the above test, to verify that the group
> > is
> > > > > printed, when you get() a specific record and print the
> > > > > nics_group.n_group_name.
>
> > > > > Thanks,
>
> > > > > Furbee
>
> > > > > On Wed, Nov 2, 2011 at 5:09 PM, Tabitha Samuel <
> > tabitha.sam...@gmail.com>wrote:>
> > > > Thank you so much for your reply! So I got a "Staff object has no
> > > > > > attribute 'query'" error when I did it with the get. I got the sql
> > > > > > when I tried it with the filter instead (instance =
> > > > > > Staff.objects.using('gold').filter(username='tsamuel') >>
> > > > > > str(instance.query))this is what I'm getting:
>
> > > > > > 'SELECT "n_test_staff"."username", "n_test_staff"."home_phone",
> > > > > > "n_test_staff"."cell_phone", "n_test_staff"."home_address",
> > > > > > "n_test_staff"."home_city", "n_test_staff"."home_state",
> > > > > > "n_test_staff"."home_zip", "n_test_staff"."emergency_name",
> > > > > > "n_test_staff"."emergency_phone", "n_test_staff"."nics_group",
> > > > > > "n_test_staff"."room_number", "n_test_staff"."title",
> > > > > > "n_test_staff"."supervisor", "n_test_staff"."url",
> > > > > > "n_test_staff"."im", "n_test_staff"."last_modification_time",
> > > > > > "n_test_staff"."start_date", "n_test_staff"."creation_time",
> > > > > > "n_test_staff"."termination_date", "n_test_staff"."bio",
> > > > > > "n_test_staff"."photopath", "n_test_staff"."office_phone",
> > > > > > "n_test_staff"."email", "n_test_staff"."preferred_name",
> > > > > > "n_test_staff"."deleted", "n_test_staff"."viewable" FROM
> > > > > > "n_test_staff" WHERE "n_test_staff"."username" = tsamuel '
>
> > > > > > Looks like from the query, is not looking into the n_nics_groups
> > > > > > table. Question is why?
>
> > > > > > Tabitha
>
> > > > > > On Nov 2, 6:00 pm, Furbee <furbeena...@gmail.com> wrote:
> > > > > > > Can you try this and tell us what you see:
>
> > > > > > > Run a shell using python manage.py shell
>
> > > > > > > >>> instance =
> > Staff.objects.using('gold').get(username='tsamuel')
>
> ...
>
> read more »

-- 
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