Database Settings is in settings.py.
The settings are in a Python dictionary called DATABASES.
To test the database configruation:
1. python manage.py shell
2. > from django.db import connection
3. > cursor = connection.cursor()
No error means configuration is correct.
To define a table:
from django.db import models
class SomeTable(models.Model):
char_field = models.CharField(max_length=20)
web_field = models.URLField()
email_field = models.EmailField(blank=True) # so the field can be blank. The default value is False
many_field = models.ManyToManyField(AnotherTable)
fk_field = models.ForeignKey(MoreTable)
date_field = models.DateField()
def __unicode__(self):
return self.char_field
class Meta: ordering = ['char_field']
To create a row:
p = SomeTable(char_field="", ....)
p.save()
To modify a field:
p.web_field = "...
p.save()
To select all objects:
SomeTable.objects.all()
To select by criteria:
SomeTable.objects.filter(char_field ='some chars')
To select by similar:
SomeTable.objects.filter(char_field__contains="some chars") # double underscores -- LIKE "%some chars%"
try: p = SomeTable.objects.get(char_field='some chars') except SomeTable.DoesNotExist: print "Not in database." else: print "In the database."
To order the output:
SomeTable.objects.order_by("web_field") # ascending
SomeTable.objects.order_by("-web_field") # descending
To update:
SomeTable.objects.all().update(char_field='other chars')
To delete:
SomeTable.objects.filter(char_field='some chars').delete()