Ask Your Question
1

How can I modify models in askbot?

asked 2011-10-26 03:34:03 -0500

iicore gravatar image

updated 2011-10-26 03:56:29 -0500

If I want to add a new element in Class Question(question.py), What should I do?

I have modify askbot/models/question.py like this:

 title    = models.CharField(max_length=300)
 tags     = models.ManyToManyField('Tag', related_name='questions')
 answer_accepted = models.BooleanField(default=False)
 +testestest = models.BooleanField(default=False)
 closed          = models.BooleanField(default=False)

After modify question.py, I delete old database in mysql, run "python manage.py syncdb; python manage.py migrate". Then I check the question table in mysql again, but "testestest" field isn't exist in question table.

edit retag flag offensive close merge delete

2 Answers

Sort by ยป oldest newest most voted
1

answered 2011-10-26 09:02:33 -0500

Evgeny gravatar image

updated 2011-10-26 09:03:39 -0500

Hello, in this case it will be necessary to use South migrations.

Here is the documentation http://south.aeracode.org/.

First thing, after you change code in the models, make a schema migration:

python manage.py schemamigration askbot --auto

Then apply the migration.

python manage.py migrate askbot

All migrations for askbot live in the directory askbot/migrations - you will need to edit your migration and the subsequent askbot's migration (when we make a new one)

The edit in the migration files is necessary to specify that your migration must run after the last current askbot's migration, and the next askbot's migration must run after yours.

Here is the document explaining how to deal with migration dependencies http://south.aeracode.org/docs/dependencies.html.

South has two types of migrations - schema migrations and data migrations. Schema migrations change the database schema, while data migrations only modify the data.

At Askbot we love South - cheers to the South devs! Definitely check out their django & python hosting service called ep.io it make django deployments real easy.

edit flag offensive delete link more
0

answered 2011-10-27 02:52:08 -0500

iicore gravatar image

Thanks, Evgeny, it works!!!

edit flag offensive delete link more

Your Answer

Please start posting anonymously - your entry will be published after you log in or create a new account.

Add Answer

Question Tools

1 follower

Stats

Asked: 2011-10-26 03:34:03 -0500

Seen: 228 times

Last updated: Oct 27 '11