Last active
August 16, 2023 17:50
-
-
Save dhbradshaw/e2bdeb502b0d0d2acced to your computer and use it in GitHub Desktop.
Rename field using migrations in django 1.7
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
To change a field name in django 1.7+ | |
1. Edit the field name in the model (but remember the old field name: you need it for step 3!) | |
2. Create an empty migration | |
$ python manage.py makemigrations --empty myApp | |
3. Edit the empty migration (it's in the migrations folder in your app folder, and will be the most recent migration) by adding | |
migrations.RenameField('MyModel', 'old_field_name', 'new_field_name'), | |
to the operations list. | |
4. Apply the migration | |
$ python manage.py migrate myApp |
HERO!!!
thanks!
Thankyou so much!
Great! Working !
Easier way I found:
1st: Is changing the model to the correct name you want.
2nd: Changing the file in migrations folder which usually looks like 0001_initial.py and changing the field name in the list to the correct field name you want also.
3rd: change the column name in the Database.
It's working to me. Thanks!!
💯. Thanks
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
@amirkarimi I found this doesn't always happen - I came here from a google search because I needed to change a migration that dropped the field and added the new one instead of renaming it.