So I created a service record model like this:

class ServiceRecord(models.Model):

    location = models.ForeignKey(Location, related_name='service_records')
    created = models.DateTimeField(auto_now_add=True, null=True)
    modified = models.DateTimeField(auto_now=True, null=True)
    active = models.NullBooleanField(default=True, blank=True, null=True)
    service_provider = models.CharField(max_length=50, blank=True, 
null=True)
    service_date = models.DateField(blank=False, null=True)
    emergency = models.BooleanField(default=False, blank=True)
    emergency_date = models.DateField(blank=True, null=True)
    description = models.TextField(blank=True, null=True)
    parts_used = models.TextField(blank=True, null=True)
    warranty = models.BooleanField(default=False, blank=True)
    verified = models.BooleanField(default=False, blank=True)


I then converted my app to south

Install South on server 

Import south from shell just to make sure you are using the same python env.

python manage.py syncdb.

python manage.py convert_to_south myproject.locations


This went fine:

 + Added model locations.Location
 + Added model locations.Photo
 + Added model locations.WaterSource
 + Added model locations.WaterStorage
 + Added model locations.PumpSystem
 + Added model locations.PressureTank
 + Added model locations.CartridgeFilter
 + Added model locations.DisinfectionUnit
 + Added model locations.TreatmentEquipment
 + Added model locations.WasteSystem
 + Added model locations.WaterSample
 + Added model locations.Schematic
 + Added model locations.Contact
 + Added M2M table for locations on locations.Contact
 + Added model locations.ServiceRecord
Created 0001_initial.py. You can now apply this migration with: ./manage.py 
migrate locations
 - Soft matched migration 0001 to 0001_initial.
Running migrations for locations:
- Nothing to migrate.
 - Loading initial data for locations.
Installed 0 object(s) from 0 fixture(s)

App 'locations' converted. Note that South assumed the application's models 
matched the database
(i.e. you haven't changed it since last syncdb); if you have, you should delete 
the locations/migrations
directory, revert models.py so it matches the database, and try again.




I then added a user key to it so I can track who created the record,     
user = models.ForeignKey(User) added:

class ServiceRecord(models.Model):

    location = models.ForeignKey(Location, related_name='service_records')
    user = models.ForeignKey(User)
    created = models.DateTimeField(auto_now_add=True, null=True)
    modified = models.DateTimeField(auto_now=True, null=True)
    active = models.NullBooleanField(default=True, blank=True, null=True)
    service_provider = models.CharField(max_length=50, blank=True, 
null=True)
    service_date = models.DateField(blank=False, null=True)
    emergency = models.BooleanField(default=False, blank=True)
    emergency_date = models.DateField(blank=True, null=True)
    description = models.TextField(blank=True, null=True)
    parts_used = models.TextField(blank=True, null=True)
    warranty = models.BooleanField(default=False, blank=True)
    verified = models.BooleanField(default=False, blank=True)

Then i did, 
python manage.py migrate locations –fake 000

 - Soft matched migration 0001 to 0001_initial.
Running migrations for locations:
- Nothing to migrate.
 - Loading initial data for locations.
Installed 0 object(s) from 0 fixture(s)


and then  where I thought it would find the user_id field..
python manage.py migrate apppython manage.py syncdb

Running migrations for locations:
- Nothing to migrate.
 - Loading initial data for locations.
Installed 0 object(s) from 0 fixture(s)


It did not migrate it and when I checked the database I saw it was not 
there and the app was just crashing complaining about the user_Id field. 
What am I doing wrong here? Any help would be appreciated. I ended up 
deleting the table and doing syncdb instead and had to manually get all the 
data back in.. Would really love to avoid this.


-- 
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?hl=en.
For more options, visit https://groups.google.com/groups/opt_out.


Reply via email to