django_content_typeテーブルデータの新規作成方法

2926 ワード

djangoプロジェクトに対応するdjango_content_typeテーブルとauth_permissionテーブルのデータはどのように追加されますか?
例を挙げます.
class A(models.Model):
    a = models.CharField(verbose_name=u' ', max_length=2)

    class Meta:
        db_table = "a"

    def __unicode__(self):
        return "{0}".format(self.id)

それぞれのコマンドを実行すると
python manage.py makemigrations  #  
python manage.py migrate

データベースにデータが追加されました
mysql> select * from django_content_type;
+----+-----------------------------+------------------------------+
| id | app_label                   | model                        |
+----+-----------------------------+------------------------------+
|  1 | admin                       | logentry                     |
|  4 | auth                        | group                        |
|  2 | auth                        | permission                   |
|  3 | auth                        | user                         |
|  5 | relational_database_service | a                            |
+----+-----------------------------+------------------------------+

mysql> select * from auth_permission;
+-----+---------------------------------------------+-----------------+-------------------------------------+
| id  | name                                        | content_type_id | codename                            |
+-----+---------------------------------------------+-----------------+-------------------------------------+
| 115 | Can add a                                   |              5 | add_a                               |
| 116 | Can change a                                |              5 | change_a                            |
| 117 | Can delete a                                |              5 | delete_a                            |
+-----+---------------------------------------------+-----------------+-------------------------------------+

だからmigrateコマンドはすでにdjangoによく統合されていて、djangoシステムの権限管理の問題に対して、とても良いサポートです!