read about autofill_now=True and autofill=True

On Thu, Jun 17, 2010 at 8:14 AM, Sheena <sheena.oconn...@gmail.com> wrote:

> I've defined a number of models, one of which I've called
> MemberProfile that looks like this
>
> class MemberProfile(models.Model):
>    postal_addr1=models.CharField(max_length=50, verbose_name="postal
> address line 1")
>    postal_addr2=models.CharField(max_length=50, verbose_name="postal
> address line 2")
>    postal_addr3=models.CharField(max_length=50, verbose_name="postal
> address line 3")
>    postalcode=models.CharField(max_length=4, verbose_name="postal
> code")
>    res_addr1=models.CharField(max_length=50,
> verbose_name="residential address line 1")
>    res_addr2=models.CharField(max_length=50,
> verbose_name="residential address line 2")
>    res_addr3=models.CharField(max_length=50,
> verbose_name="residential address line 3")
>    rescode=models.CharField(max_length=4, verbose_name="residential
> postal code")
>    homeno=models.CharField(max_length=12, verbose_name="home number")
>    workno=models.CharField(max_length=12, verbose_name="work number")
>    cellno=models.CharField(max_length=12, unique=True,
> verbose_name="cellphone number")
>    idno=models.CharField(max_length=13, unique=True, verbose_name="id
> or passport number")
>    occu=models.CharField(max_length=15, verbose_name="occupation")
>    employer=models.CharField(max_length=30)
>    amount_paid=models.IntegerField(blank=True, null=True,
> help_text="total fees paid to date", verbose_name="total reciepts")
>    reciept_no=models.IntegerField(blank=True, null=True,
> help_text="latest reciept number", verbose_name="reciept number")
>    dob=models.DateField(verbose_name="date of birth")
>    start_date=models.DateField()
>    expire_date=models.DateField()
>    captured_by=models.CharField(max_length=50, help_text="name of
> data capturer")
>    photo=models.ImageField(upload_to="memberphotos", null=True,
> blank=True)
>    permission=models.CharField(max_length=1,
> choices=PERMISSION_CHOICES, help_text="Administration level, if the
> user is a superuser this field has no effect")
>    user=models.ForeignKey(User,unique=True,related_name="member",
> editable=False)
>    branch=models.ForeignKey(Branch,related_name="member", null=True)
>
>    def create_member(self,username,email,password):
>        m=MemberProfile()
>
>
> m.user=User.objects.create_user(username=username,email=email,password=password)
>        return m
>
>    def __unicode__(self):
>        return self.user.username
>
>    def save(self,*args,**kwargs):
>        if not self.start_date:
>            self.start_date=models.DateField(datetime.date.today())
>            year=timedelta(days=365)
>            self.expire_date=models.DateField(datetime.date.today()
> +year)
>        super(MemberProfile, self).save(self,*args,**kwargs)
>
>
> I then wrote a method called populate just to test the database out
> and it is pretty friendly until I get this:
>
> Traceback (most recent call last):
>  File "<console>", line 1, in <module>
>  File "/host/Shared info/MyDBA/MyMembers/populate.py", line 114, in
> populate
>    m1.save()
>  File "/host/Shared info/MyDBA/MyMembers/../MyMembers/chiefs/
> models.py", line 115, in save
>    super(MemberProfile, self).save(self,*args,**kwargs)
>  File "/usr/lib/pymodules/python2.6/django/db/models/base.py", line
> 410, in save
>    self.save_base(force_insert=force_insert,
> force_update=force_update)
>  File "/usr/lib/pymodules/python2.6/django/db/models/base.py", line
> 483, in save_base
>    values = [(f, f.get_db_prep_save(raw and getattr(self, f.attname)
> or f.pre_save(self, True))) for f in meta.local_fields if not
> isinstance(f, AutoField)]
>  File "/usr/lib/pymodules/python2.6/django/db/models/fields/
> __init__.py", line 192, in get_db_prep_save
>    return self.get_db_prep_value(value)
>  File "/usr/lib/pymodules/python2.6/django/db/models/fields/
> __init__.py", line 511, in get_db_prep_value
>    return connection.ops.value_to_db_date(self.to_python(value))
>  File "/usr/lib/pymodules/python2.6/django/db/models/fields/
> __init__.py", line 472, in to_python
>    if not ansi_date_re.search(value):
> TypeError: expected string or buffer
>
> m1 is an instance of MemberProfile...
>
> The error goes away if I comment out everything to do with
> DateField...
> Am I doing something retarded? As far as I can see I'm populating the
> fields the right way...
>
> Any help would be greatly appreciated
>
> --
> You received this message because you are subscribed to the Google Groups
> "Django users" group.
> To post to this group, send email to django-us...@googlegroups.com.
> To unsubscribe from this group, send email to
> django-users+unsubscr...@googlegroups.com<django-users%2bunsubscr...@googlegroups.com>
> .
> For more options, visit this group at
> http://groups.google.com/group/django-users?hl=en.
>
>

-- 
You received this message because you are subscribed to the Google Groups 
"Django users" group.
To post to this group, send email to django-us...@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