How to Create an Auto Incrementing Integer Field

2013-07-27 Thread Gabriel - Iulian Dumbrava
I ended up using a stored procedure for something similar, triggered on after 
insert.

-- 
You received this message because you are subscribed to the Google Groups 
"Django users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to django-users+unsubscr...@googlegroups.com.
To post to this group, send email to django-users@googlegroups.com.
Visit this group at http://groups.google.com/group/django-users.
For more options, visit https://groups.google.com/groups/opt_out.




Re: How to Create an Auto Incrementing Integer Field

2013-07-23 Thread Christian Erhardt
you are very welcome

-- 
You received this message because you are subscribed to the Google Groups 
"Django users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to django-users+unsubscr...@googlegroups.com.
To post to this group, send email to django-users@googlegroups.com.
Visit this group at http://groups.google.com/group/django-users.
For more options, visit https://groups.google.com/groups/opt_out.




Re: How to Create an Auto Incrementing Integer Field

2013-07-22 Thread Cody Scott
Thank you very much, that was exactly what I was looking for.

On Monday, 22 July 2013 09:48:51 UTC-4, Christian Erhardt wrote:
>
> Have a look at this post: 
> http://stackoverflow.com/questions/3123796/how-to-make-an-auto-filled-and-auto-incrementing-field-in-django-admin
>  
> They determine the next value by calling a function called number(). In 
> your case it would look something like this:
>
> class Cliente(models.Model):
>> """This is the client data model, it holds all client information. 
>> This
>>docstring has to be improved."""
>> def number():
>> no = Cliente.objects.all().aggregate(Max(order))
>> if no == None:
>> return 1
>> else:
>> return no + 1
>>
>> clientcode = models.IntegerField(_('Code'), max_length=6, 
>> unique=True, \
>> default=number)
>>
>  
>

-- 
You received this message because you are subscribed to the Google Groups 
"Django users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to django-users+unsubscr...@googlegroups.com.
To post to this group, send email to django-users@googlegroups.com.
Visit this group at http://groups.google.com/group/django-users.
For more options, visit https://groups.google.com/groups/opt_out.




Re: How to Create an Auto Incrementing Integer Field

2013-07-22 Thread Christian Erhardt
Have a look at this post: 
http://stackoverflow.com/questions/3123796/how-to-make-an-auto-filled-and-auto-incrementing-field-in-django-admin
 
They determine the next value by calling a function called number(). In 
your case it would look something like this:

class Cliente(models.Model):
> """This is the client data model, it holds all client information. This
>docstring has to be improved."""
> def number():
> no = Cliente.objects.all().aggregate(Max(order))
> if no == None:
> return 1
> else:
> return no + 1
>
> clientcode = models.IntegerField(_('Code'), max_length=6, unique=True, 
> \
> default=number)
>
 

-- 
You received this message because you are subscribed to the Google Groups 
"Django users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to django-users+unsubscr...@googlegroups.com.
To post to this group, send email to django-users@googlegroups.com.
Visit this group at http://groups.google.com/group/django-users.
For more options, visit https://groups.google.com/groups/opt_out.




Re: How to Create an Auto Incrementing Integer Field

2013-07-22 Thread Rafael E. Ferrero
Maybe extending save() method ?
Somethin like...

class your_model(models.Model):
order = models.IntegerField(default=1)

def save(self, *args, **kwargs):
if not self.id:
#here must to find the last order then sum one and save the
result
self.order=result
super(your_model, self).save(*args,**kwargs)


I'm not quite sure, but i think that this is the way.




2013/7/19 Cody Scott 

> I have a list of articles and you can control the order of the articles by
> changing the order field in the model
>
>
> order = models.IntegerField(default=1)
>
>
> I would like it to default to one more than the last article or one more
> than the largest order (since you can set the order)
>
>
> I can't use AutoField because it is only for primary keys.
>
>  --
> You received this message because you are subscribed to the Google Groups
> "Django users" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to django-users+unsubscr...@googlegroups.com.
> To post to this group, send email to django-users@googlegroups.com.
> Visit this group at http://groups.google.com/group/django-users.
> For more options, visit https://groups.google.com/groups/opt_out.
>
>
>



-- 
Rafael E. Ferrero
Claro: (03562) 15514856

-- 
You received this message because you are subscribed to the Google Groups 
"Django users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to django-users+unsubscr...@googlegroups.com.
To post to this group, send email to django-users@googlegroups.com.
Visit this group at http://groups.google.com/group/django-users.
For more options, visit https://groups.google.com/groups/opt_out.




How to Create an Auto Incrementing Integer Field

2013-07-19 Thread Cody Scott
 

I have a list of articles and you can control the order of the articles by 
changing the order field in the model


order = models.IntegerField(default=1)


I would like it to default to one more than the last article or one more 
than the largest order (since you can set the order)


I can't use AutoField because it is only for primary keys.

-- 
You received this message because you are subscribed to the Google Groups 
"Django users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to django-users+unsubscr...@googlegroups.com.
To post to this group, send email to django-users@googlegroups.com.
Visit this group at http://groups.google.com/group/django-users.
For more options, visit https://groups.google.com/groups/opt_out.