Пример #1
0
class Migration(migrations.Migration):

    initial = True

    dependencies = [
        migrations.swappable_dependency(settings.AUTH_USER_MODEL),
    ]

    operations = [
        migrations.CreateModel(
            name='Category',
            fields=[
                ('id',
                 models.AutoField(auto_created=True,
                                  primary_key=True,
                                  serialize=False,
                                  verbose_name='ID')),
                ('name', models.CharField(db_index=True, max_length=25)),
                ('slug', models.SlugField(allow_unicode=True, editable=False)),
                ('position',
                 models.PositiveSmallIntegerField(db_index=True, unique=True)),
                ('lft', models.PositiveIntegerField(editable=False)),
                ('rght', models.PositiveIntegerField(editable=False)),
                ('tree_id',
                 models.PositiveIntegerField(db_index=True, editable=False)),
                ('level', models.PositiveIntegerField(editable=False)),
                ('parent',
                 mptt.fields.TreeForeignKey(
                     blank=True,
                     null=True,
                     on_delete=django.db.models.deletion.CASCADE,
                     related_name='children',
                     to='blog.Category')),
            ],
            options={
                'verbose_name': 'Category',
                'verbose_name_plural': 'Categories',
                'ordering': ('name', ),
                'unique_together': {('slug', 'parent')},
            },
        ),
        migrations.CreateModel(
            name='Post',
            fields=[
                ('id',
                 models.AutoField(auto_created=True,
                                  primary_key=True,
                                  serialize=False,
                                  verbose_name='ID')),
                ('title', models.CharField(max_length=200)),
                ('body', models.TextField()),
                ('draft', models.BooleanField(default=False)),
                ('slug',
                 models.SlugField(allow_unicode=True,
                                  editable=False,
                                  max_length=200,
                                  unique=True)),
                ('publish_date', models.DateTimeField(blank=True, null=True)),
                ('timestamp', models.DateTimeField(auto_now_add=True)),
                ('updated', models.DateTimeField(auto_now=True)),
                ('author',
                 models.ForeignKey(default=1,
                                   on_delete=django.db.models.deletion.CASCADE,
                                   related_name='authorpost',
                                   to=settings.AUTH_USER_MODEL)),
                ('category',
                 mptt.fields.TreeForeignKey(
                     on_delete=django.db.models.deletion.CASCADE,
                     related_name='postcategory',
                     to='blog.Category')),
            ],
            options={
                'ordering': ['-publish_date', '-updated', '-timestamp'],
                'index_together': {('id', 'slug')},
            },
        ),
        migrations.CreateModel(
            name='Photo',
            fields=[
                ('id',
                 models.AutoField(auto_created=True,
                                  primary_key=True,
                                  serialize=False,
                                  verbose_name='ID')),
                ('file',
                 models.ImageField(
                     blank=True,
                     null=True,
                     unique=True,
                     upload_to=blog.models.images_directory_path)),
                ('timestamp', models.DateTimeField(auto_now_add=True)),
                ('post',
                 models.ForeignKey(on_delete=django.db.models.deletion.CASCADE,
                                   related_name='photos',
                                   to='blog.Post')),
            ],
        ),
    ]
Пример #2
0
class Migration(migrations.Migration):

    initial = True

    dependencies = [
        ('auth', '0009_alter_user_last_name_max_length'),
    ]

    operations = [
        migrations.CreateModel(
            name='UserAccount',
            fields=[
                ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
                ('password', models.CharField(max_length=128, verbose_name='password')),
                ('last_login', models.DateTimeField(blank=True, null=True, verbose_name='last login')),
                ('is_superuser', models.BooleanField(default=False, help_text='Designates that this user has all permissions without explicitly assigning them.', verbose_name='superuser status')),
                ('first_name', models.CharField(blank=True, max_length=30, verbose_name='first name')),
                ('last_name', models.CharField(blank=True, max_length=150, verbose_name='last name')),
                ('email', models.EmailField(blank=True, max_length=254, verbose_name='email address')),
                ('is_staff', models.BooleanField(default=False, help_text='Designates whether the user can log into this admin site.', verbose_name='staff status')),
                ('is_active', models.BooleanField(default=True, help_text='Designates whether this user should be treated as active. Unselect this instead of deleting accounts.', verbose_name='active')),
                ('date_joined', models.DateTimeField(default=django.utils.timezone.now, verbose_name='date joined')),
                ('username', models.CharField(error_messages={'unique': 'A user with that username already exists.'}, help_text='作者昵称、2~30个字符', max_length=30, unique=True, verbose_name='username')),
                ('email_ac', models.BooleanField(default=False, verbose_name='邮箱状态')),
                ('mobile', models.CharField(error_messages={'unique': '此手机号已注册'}, help_text='手机号', max_length=11, unique=True, verbose_name='手机号')),
                ('header', models.URLField(default='', verbose_name='头像')),
                ('desc', models.TextField(blank=True, help_text='200字描述一下自己', max_length=200, null=True, verbose_name='简介')),
                ('alipay', models.ImageField(blank=True, null=True, upload_to='dsm/alipay/', verbose_name='支付宝打赏码')),
                ('wechat', models.ImageField(blank=True, null=True, upload_to='dsm/wechat/', verbose_name='微信打赏码')),
                ('groups', models.ManyToManyField(blank=True, help_text='The groups this user belongs to. A user will get all permissions granted to each of their groups.', related_name='user_set', related_query_name='user', to='auth.Group', verbose_name='groups')),
                ('user_permissions', models.ManyToManyField(blank=True, help_text='Specific permissions for this user.', related_name='user_set', related_query_name='user', to='auth.Permission', verbose_name='user permissions')),
            ],
            options={
                'verbose_name': '账户',
                'verbose_name_plural': '账户',
                'db_table': 'user_account',
            },
            managers=[
                ('objects', blog.models.UserManager()),
            ],
        ),
        migrations.CreateModel(
            name='Advertisement',
            fields=[
                ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
                ('ad_name', models.CharField(max_length=20, verbose_name='广告名')),
                ('image', models.URLField(blank=True, verbose_name='图片')),
                ('link', models.URLField(verbose_name='广告链接')),
                ('adtype', models.PositiveSmallIntegerField(blank=True, choices=[(0, '右侧方形广告'), (1, '左侧长条广告')], null=True, verbose_name='广告类型')),
                ('remark', models.TextField(blank=True, max_length=64, null=True, verbose_name='备注')),
                ('add', models.DateTimeField(auto_now_add=True, verbose_name='添加时间')),
                ('mod', models.DateTimeField(auto_now=True, verbose_name='最近修改')),
                ('end', models.DateTimeField(null=True, verbose_name='结束时间')),
            ],
            options={
                'verbose_name': '广告',
                'verbose_name_plural': '广告',
                'db_table': 'advertisement',
            },
        ),
        migrations.CreateModel(
            name='Blog',
            fields=[
                ('id', models.CharField(default=shortuuid.main.ShortUUID.random, max_length=12, primary_key=True, serialize=False)),
                ('title', models.CharField(help_text='1~32个字', max_length=32, verbose_name='标题')),
                ('cover', models.URLField(blank=True, default='', verbose_name='封面')),
                ('content', models.TextField(blank=True, null=True, verbose_name='内容')),
                ('source', models.URLField(blank=True, help_text='如果转载, 则提供原文链接', null=True, verbose_name='原文链接')),
                ('is_fine', models.BooleanField(default=False, verbose_name='站长推荐')),
                ('is_top', models.BooleanField(default=False, verbose_name='是否置顶')),
                ('read', models.PositiveIntegerField(default=0, verbose_name='阅读数')),
                ('like', models.PositiveIntegerField(default=0, verbose_name='点赞数')),
                ('add', models.DateTimeField(auto_now_add=True, verbose_name='发表时间')),
                ('mod', models.DateTimeField(auto_now=True, verbose_name='最后修改')),
                ('is_active', models.BooleanField(default=False, verbose_name='是否可用')),
                ('author', models.ForeignKey(limit_choices_to={'is_active': True, 'is_staff': True}, on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL, verbose_name='作者')),
            ],
            options={
                'verbose_name': '文章',
                'verbose_name_plural': '文章',
                'db_table': 'blog',
            },
        ),
        migrations.CreateModel(
            name='Category',
            fields=[
                ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
                ('add', models.DateTimeField(auto_now_add=True, verbose_name='创建时间')),
                ('mod', models.DateTimeField(auto_now=True, verbose_name='更新修改')),
                ('is_active', models.BooleanField(default=True, verbose_name='逻辑删除')),
                ('pre_cat', models.CharField(choices=[('A', '文学类'), ('B', '技术类')], max_length=1, verbose_name='前置分类')),
                ('cat', models.CharField(help_text='1~12个字', max_length=12, verbose_name='类别')),
            ],
            options={
                'verbose_name': '类别',
                'verbose_name_plural': '类别',
                'db_table': 'category',
            },
        ),
        migrations.CreateModel(
            name='Expand',
            fields=[
                ('key', models.CharField(help_text='1~16字符', max_length=16, primary_key=True, serialize=False, verbose_name='键')),
                ('value', models.CharField(help_text='1~32字符', max_length=32, verbose_name='值')),
                ('remark', models.TextField(max_length=100, null=True, verbose_name='备注')),
                ('mod', models.DateTimeField(auto_now=True, verbose_name='上次变更')),
            ],
            options={
                'verbose_name': '拓展数据',
                'verbose_name_plural': '拓展数据',
                'db_table': 'expand',
            },
        ),
        migrations.CreateModel(
            name='Link',
            fields=[
                ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
                ('add', models.DateTimeField(auto_now_add=True, verbose_name='创建时间')),
                ('mod', models.DateTimeField(auto_now=True, verbose_name='更新修改')),
                ('is_active', models.BooleanField(default=True, verbose_name='逻辑删除')),
                ('link', models.URLField(help_text='完整的网站首页地址', max_length=64, unique=True, verbose_name='链接')),
                ('link_name', models.CharField(help_text='网站的名字', max_length=32, verbose_name='链接名称')),
                ('cat', models.PositiveSmallIntegerField(choices=[(0, '公益链接'), (1, '个人主页'), (2, '商业广告')], default=1, help_text='网站类型', verbose_name='链接类型')),
                ('email', models.EmailField(help_text='有特殊情况方便联系', max_length=32, verbose_name='邮箱')),
            ],
            options={
                'verbose_name': '友链',
                'verbose_name_plural': '友链',
                'db_table': 'link',
            },
        ),
        migrations.CreateModel(
            name='Music',
            fields=[
                ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
                ('name', models.CharField(max_length=64, verbose_name='音乐名')),
                ('author', models.CharField(max_length=20, verbose_name='歌手')),
                ('code', models.TextField(max_length=300, verbose_name='外链代码')),
                ('mod', models.DateTimeField(auto_now=True, verbose_name='最后变更')),
                ('is_active', models.BooleanField(default=True, verbose_name='是否可用')),
            ],
            options={
                'verbose_name': '外链音乐',
                'verbose_name_plural': '外链音乐',
                'db_table': 'music',
            },
        ),
        migrations.CreateModel(
            name='Notice',
            fields=[
                ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
                ('add', models.DateTimeField(auto_now_add=True, verbose_name='创建时间')),
                ('mod', models.DateTimeField(auto_now=True, verbose_name='更新修改')),
                ('is_active', models.BooleanField(default=True, verbose_name='逻辑删除')),
                ('title', models.CharField(help_text='1~20个字', max_length=20, verbose_name='标题')),
                ('content', models.TextField(verbose_name='内容')),
            ],
            options={
                'verbose_name': '公告',
                'verbose_name_plural': '公告',
                'db_table': 'notice',
            },
        ),
        migrations.CreateModel(
            name='Tag',
            fields=[
                ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
                ('add', models.DateTimeField(auto_now_add=True, verbose_name='创建时间')),
                ('mod', models.DateTimeField(auto_now=True, verbose_name='更新修改')),
                ('is_active', models.BooleanField(default=True, verbose_name='逻辑删除')),
                ('tag', models.CharField(help_text='1~12个字', max_length=12, unique=True, verbose_name='标签')),
            ],
            options={
                'verbose_name': '标签',
                'verbose_name_plural': '标签',
                'db_table': 'tag',
            },
        ),
        migrations.AlterUniqueTogether(
            name='music',
            unique_together={('name', 'author')},
        ),
        migrations.AddField(
            model_name='blog',
            name='cat',
            field=models.ForeignKey(limit_choices_to={'is_active': True}, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='cblogs', to='blog.Category', verbose_name='分类'),
        ),
        migrations.AddField(
            model_name='blog',
            name='music',
            field=models.ForeignKey(blank=True, limit_choices_to={'is_active': True}, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='mblogs', to='blog.Music', verbose_name='背景音乐'),
        ),
        migrations.AddField(
            model_name='blog',
            name='tags',
            field=models.ManyToManyField(blank=True, limit_choices_to={'is_active': True}, related_name='tblogs', to='blog.Tag', verbose_name='标签'),
        ),
        migrations.CreateModel(
            name='Author',
            fields=[
            ],
            options={
                'verbose_name': '账户中心',
                'verbose_name_plural': '账户中心',
                'proxy': True,
                'indexes': [],
            },
            bases=('blog.useraccount',),
            managers=[
                ('objects', blog.models.UserManager()),
            ],
        ),
        migrations.CreateModel(
            name='AuthorBlog',
            fields=[
            ],
            options={
                'verbose_name': '我的文章',
                'verbose_name_plural': '我的文章',
                'proxy': True,
                'indexes': [],
            },
            bases=('blog.blog',),
        ),
    ]
Пример #3
0
class Migration(migrations.Migration):

    initial = True

    dependencies = []

    operations = [
        migrations.CreateModel(
            name='Categoria',
            fields=[
                ('id',
                 models.AutoField(auto_created=True,
                                  primary_key=True,
                                  serialize=False,
                                  verbose_name='ID')),
                ('nome',
                 models.CharField(max_length=100,
                                  verbose_name='Nome da categoria')),
                ('slug', models.SlugField(verbose_name='Atalho')),
            ],
        ),
        migrations.CreateModel(
            name='Editor',
            fields=[
                ('id',
                 models.AutoField(auto_created=True,
                                  primary_key=True,
                                  serialize=False,
                                  verbose_name='ID')),
                ('nome',
                 models.CharField(max_length=100,
                                  verbose_name='Nome e Sobrenome do Editor')),
                ('facebooklink',
                 models.CharField(blank=True,
                                  max_length=200,
                                  null=True,
                                  verbose_name='Link do Facebook pessoal')),
            ],
        ),
        migrations.CreateModel(
            name='Email',
            fields=[
                ('id',
                 models.AutoField(auto_created=True,
                                  primary_key=True,
                                  serialize=False,
                                  verbose_name='ID')),
                ('nome', models.CharField(max_length=100)),
                ('email', models.EmailField(max_length=254)),
            ],
        ),
        migrations.CreateModel(
            name='EnviarEmail',
            fields=[
                ('id',
                 models.AutoField(auto_created=True,
                                  primary_key=True,
                                  serialize=False,
                                  verbose_name='ID')),
                ('assunto', models.CharField(max_length=200)),
                ('texto', ckeditor.fields.RichTextField()),
            ],
        ),
        migrations.CreateModel(
            name='Post',
            fields=[
                ('id',
                 models.AutoField(auto_created=True,
                                  primary_key=True,
                                  serialize=False,
                                  verbose_name='ID')),
                ('title', models.CharField(max_length=100)),
                ('slug', models.SlugField(verbose_name='Atalho')),
                ('subtitle',
                 models.CharField(blank=True, max_length=100, null=True)),
                ('keywords',
                 models.CharField(
                     blank=True,
                     help_text='Palavras chaves separadas por vírgula',
                     max_length=150,
                     null=True,
                     verbose_name='Keywords')),
                ('capa',
                 models.ImageField(
                     default='blog/img/logo.svg',
                     help_text='Resolução recomendada: 800x600 horizontal',
                     upload_to=blog.models.path_and_rename,
                     verbose_name='Foto da capa')),
                ('nivel', models.PositiveSmallIntegerField(default=1,
                                                           null=True)),
                ('content', ckeditor.fields.RichTextField()),
                ('created_date',
                 models.DateTimeField(default=django.utils.timezone.now)),
                ('published_date', models.DateTimeField(blank=True,
                                                        null=True)),
                ('categoria', models.ManyToManyField(to='blog.Categoria')),
                ('editor', models.ManyToManyField(to='blog.Editor')),
            ],
        ),
    ]
Пример #4
0
class Migration(migrations.Migration):

    initial = True

    dependencies = [
        migrations.swappable_dependency(settings.AUTH_USER_MODEL),
    ]

    operations = [
        migrations.CreateModel(
            name='Article',
            fields=[
                ('id', models.AutoField(primary_key=True, serialize=False)),
                ('add_time',
                 models.DateTimeField(default=django.utils.timezone.now,
                                      verbose_name='添加时间')),
                ('modify_time',
                 models.DateTimeField(default=django.utils.timezone.now,
                                      verbose_name='修改时间')),
                ('title',
                 models.CharField(max_length=100,
                                  unique=True,
                                  verbose_name='文章标题')),
                ('content', mdeditor.fields.MDTextField(verbose_name='文章内容')),
                ('type',
                 models.CharField(choices=[('a', '文章'), ('p', '页面')],
                                  default='a',
                                  max_length=1,
                                  verbose_name='文章类型')),
                ('order',
                 models.PositiveSmallIntegerField(default=0,
                                                  help_text='越大越前',
                                                  verbose_name='排序')),
                ('views',
                 models.PositiveIntegerField(default=0, verbose_name='浏览量')),
                ('author',
                 models.ForeignKey(on_delete=django.db.models.deletion.CASCADE,
                                   to=settings.AUTH_USER_MODEL,
                                   verbose_name='作者')),
            ],
            options={
                'verbose_name': '2-文章',
                'verbose_name_plural': '2-文章',
                'ordering': ['-order', '-add_time'],
            },
        ),
        migrations.CreateModel(
            name='Category',
            fields=[
                ('id', models.AutoField(primary_key=True, serialize=False)),
                ('add_time',
                 models.DateTimeField(default=django.utils.timezone.now,
                                      verbose_name='添加时间')),
                ('modify_time',
                 models.DateTimeField(default=django.utils.timezone.now,
                                      verbose_name='修改时间')),
                ('name',
                 models.CharField(max_length=30,
                                  unique=True,
                                  verbose_name='分类')),
                ('order',
                 models.PositiveSmallIntegerField(default=0,
                                                  help_text='越大越前',
                                                  verbose_name='排序')),
                ('slug', models.SlugField(default='')),
                ('parent_category',
                 models.ForeignKey(blank=True,
                                   null=True,
                                   on_delete=django.db.models.deletion.CASCADE,
                                   to='blog.Category',
                                   verbose_name='父级分类')),
            ],
            options={
                'verbose_name': '1-文章分类',
                'verbose_name_plural': '1-文章分类',
                'ordering': ['-order', 'add_time'],
            },
        ),
        migrations.CreateModel(
            name='Comment',
            fields=[
                ('id', models.AutoField(primary_key=True, serialize=False)),
                ('add_time',
                 models.DateTimeField(default=django.utils.timezone.now,
                                      verbose_name='添加时间')),
                ('modify_time',
                 models.DateTimeField(default=django.utils.timezone.now,
                                      verbose_name='修改时间')),
                ('content',
                 models.TextField(max_length=250, verbose_name='评论内容')),
                ('is_enable',
                 models.BooleanField(default=True, verbose_name='是否显示')),
                ('article',
                 models.ForeignKey(on_delete=django.db.models.deletion.CASCADE,
                                   to='blog.Article',
                                   verbose_name='评论文章')),
                ('author',
                 models.ForeignKey(on_delete=django.db.models.deletion.CASCADE,
                                   to=settings.AUTH_USER_MODEL,
                                   verbose_name='评论者')),
                ('parent_comment',
                 models.ForeignKey(blank=True,
                                   null=True,
                                   on_delete=django.db.models.deletion.CASCADE,
                                   to='blog.Comment',
                                   verbose_name='父评论')),
            ],
            options={
                'verbose_name': '3-文章评论',
                'verbose_name_plural': '3-文章评论',
            },
        ),
        migrations.CreateModel(
            name='GuestBook',
            fields=[
                ('id', models.AutoField(primary_key=True, serialize=False)),
                ('add_time',
                 models.DateTimeField(default=django.utils.timezone.now,
                                      verbose_name='添加时间')),
                ('modify_time',
                 models.DateTimeField(default=django.utils.timezone.now,
                                      verbose_name='修改时间')),
                ('content',
                 models.TextField(max_length=250, verbose_name='留言内容')),
                ('author',
                 models.ForeignKey(on_delete=django.db.models.deletion.CASCADE,
                                   to=settings.AUTH_USER_MODEL,
                                   verbose_name='留言者')),
            ],
            options={
                'verbose_name': '7-留言板',
                'verbose_name_plural': '7-留言板',
                'ordering': ['author', '-id'],
            },
        ),
        migrations.CreateModel(
            name='Link',
            fields=[
                ('id', models.AutoField(primary_key=True, serialize=False)),
                ('add_time',
                 models.DateTimeField(default=django.utils.timezone.now,
                                      verbose_name='添加时间')),
                ('modify_time',
                 models.DateTimeField(default=django.utils.timezone.now,
                                      verbose_name='修改时间')),
                ('name',
                 models.CharField(max_length=30,
                                  unique=True,
                                  verbose_name='链接名称')),
                ('order',
                 models.PositiveSmallIntegerField(default=0,
                                                  help_text='越大越前',
                                                  verbose_name='排序')),
                ('url', models.URLField(verbose_name='链接地址')),
                ('is_enable',
                 models.BooleanField(default=True, verbose_name='是否启用')),
            ],
            options={
                'verbose_name': '8-友情链接',
                'verbose_name_plural': '8-友情链接',
                'ordering': ['order'],
            },
        ),
        migrations.CreateModel(
            name='Photo',
            fields=[
                ('id', models.AutoField(primary_key=True, serialize=False)),
                ('add_time',
                 models.DateTimeField(default=django.utils.timezone.now,
                                      verbose_name='添加时间')),
                ('modify_time',
                 models.DateTimeField(default=django.utils.timezone.now,
                                      verbose_name='修改时间')),
                ('title',
                 models.CharField(help_text='用于当作照片名称',
                                  max_length=50,
                                  verbose_name='图片标题')),
                ('desc',
                 models.TextField(blank=True,
                                  help_text='用于图片标签的title属性',
                                  max_length=200,
                                  null=True,
                                  verbose_name='图片描述')),
                ('image',
                 models.ImageField(help_text='默认保存在/media/photo/',
                                   upload_to=blog.models.photo_path,
                                   verbose_name='图片')),
            ],
            options={
                'verbose_name': '6-相册图片',
                'verbose_name_plural': '6-相册图片',
            },
        ),
        migrations.CreateModel(
            name='Setting',
            fields=[
                ('id',
                 models.AutoField(auto_created=True,
                                  primary_key=True,
                                  serialize=False,
                                  verbose_name='ID')),
                ('name', models.CharField(max_length=100,
                                          verbose_name='站点名称')),
                ('desc',
                 models.TextField(blank=True, default='',
                                  verbose_name='站点描述')),
                ('keyword',
                 models.TextField(blank=True, default='',
                                  verbose_name='站点关键字')),
                ('article_desc_len',
                 models.IntegerField(default=250, verbose_name='文章摘要长度')),
                ('sidebar_article_count',
                 models.IntegerField(default=10, verbose_name='侧边栏文章条数')),
                ('enable_photo',
                 models.BooleanField(default=True, verbose_name='是否启用相册')),
                ('user_verify_email',
                 models.BooleanField(default=False,
                                     verbose_name='用户注册是否验证邮箱')),
                ('enable_multi_user',
                 models.BooleanField(
                     default=False,
                     help_text='是否启用多用户博客系统, 注册用户只具有对自己文章的增删改查权限',
                     verbose_name='是否启用多用户博客系统')),
                ('github_user',
                 models.CharField(default='enjoy-binbin',
                                  help_text='https://github.com/enjoy-binbin',
                                  max_length=50,
                                  verbose_name='github账号')),
                ('github_repository',
                 models.CharField(
                     default='Django-blog',
                     help_text='https://github.com/enjoy-binbin/Django-blog',
                     max_length=50,
                     verbose_name='github仓库')),
            ],
            options={
                'verbose_name': '0-站点配置',
                'verbose_name_plural': '0-站点配置',
            },
        ),
        migrations.CreateModel(
            name='SideBar',
            fields=[
                ('id', models.AutoField(primary_key=True, serialize=False)),
                ('add_time',
                 models.DateTimeField(default=django.utils.timezone.now,
                                      verbose_name='添加时间')),
                ('modify_time',
                 models.DateTimeField(default=django.utils.timezone.now,
                                      verbose_name='修改时间')),
                ('title', models.CharField(max_length=30, verbose_name='标题')),
                ('content', models.TextField(verbose_name='内容')),
                ('order',
                 models.PositiveSmallIntegerField(default=1,
                                                  help_text='越大越前',
                                                  verbose_name='排序')),
                ('is_enable',
                 models.BooleanField(default=True, verbose_name='是否启用')),
            ],
            options={
                'verbose_name': '5-侧边栏',
                'verbose_name_plural': '5-侧边栏',
                'ordering': ['-order'],
            },
        ),
        migrations.CreateModel(
            name='Tag',
            fields=[
                ('id', models.AutoField(primary_key=True, serialize=False)),
                ('add_time',
                 models.DateTimeField(default=django.utils.timezone.now,
                                      verbose_name='添加时间')),
                ('modify_time',
                 models.DateTimeField(default=django.utils.timezone.now,
                                      verbose_name='修改时间')),
                ('name',
                 models.CharField(max_length=25,
                                  unique=True,
                                  verbose_name='标签名')),
            ],
            options={
                'verbose_name': '4-文章标签',
                'verbose_name_plural': '4-文章标签',
                'ordering': ['name'],
            },
        ),
        migrations.AddField(
            model_name='article',
            name='category',
            field=models.ForeignKey(
                on_delete=django.db.models.deletion.CASCADE,
                to='blog.Category',
                verbose_name='文章分类'),
        ),
        migrations.AddField(
            model_name='article',
            name='tags',
            field=models.ManyToManyField(blank=True,
                                         to='blog.Tag',
                                         verbose_name='标签'),
        ),
    ]
Пример #5
0
class Migration(migrations.Migration):

    initial = True

    dependencies = [
        migrations.swappable_dependency(settings.AUTH_USER_MODEL),
    ]

    operations = [
        migrations.CreateModel(
            name='Category',
            fields=[
                ('id',
                 models.AutoField(auto_created=True,
                                  primary_key=True,
                                  serialize=False,
                                  verbose_name='ID')),
                ('name', models.CharField(max_length=100,
                                          verbose_name='name')),
                ('title',
                 models.CharField(blank=True,
                                  max_length=255,
                                  verbose_name='title')),
                ('slug', models.SlugField(unique=True, verbose_name='slug')),
                ('description',
                 models.TextField(blank=True, verbose_name='description')),
                ('created',
                 models.DateTimeField(auto_now_add=True,
                                      verbose_name='creation time')),
                ('genre',
                 models.PositiveSmallIntegerField(choices=[(1, 'collection'),
                                                           (2, 'tutorial')],
                                                  default=1,
                                                  verbose_name='genre')),
                ('status',
                 models.PositiveSmallIntegerField(blank=True,
                                                  choices=[(1, 'ongoing'),
                                                           (2, 'finished')],
                                                  null=True,
                                                  verbose_name='status')),
                ('cover',
                 models.ImageField(
                     blank=True,
                     upload_to='/static/covers/categories/%Y/%m/%d/',
                     verbose_name='cover')),
                ('cover_caption',
                 models.CharField(blank=True,
                                  max_length=255,
                                  verbose_name='cover caption')),
                ('resource',
                 models.URLField(blank=True, verbose_name='resource')),
                ('creator',
                 models.ForeignKey(on_delete=django.db.models.deletion.CASCADE,
                                   to=settings.AUTH_USER_MODEL,
                                   verbose_name='creator')),
            ],
        ),
        migrations.CreateModel(
            name='Post',
            fields=[
                ('id',
                 models.AutoField(auto_created=True,
                                  primary_key=True,
                                  serialize=False,
                                  verbose_name='ID')),
                ('status',
                 models.PositiveSmallIntegerField(choices=[(1, 'published'),
                                                           (2, 'draft'),
                                                           (3, 'hidden')],
                                                  default=2,
                                                  verbose_name='status')),
                ('title', models.CharField(max_length=255,
                                           verbose_name='title')),
                ('body', models.TextField(verbose_name='body')),
                ('excerpt',
                 models.CharField(blank=True,
                                  max_length=255,
                                  verbose_name='excerpt')),
                ('views',
                 models.PositiveIntegerField(default=0,
                                             editable=False,
                                             verbose_name='views')),
                ('pub_date',
                 models.DateTimeField(blank=True,
                                      null=True,
                                      verbose_name='publication time')),
                ('created_time',
                 model_utils.fields.AutoCreatedField(
                     default=django.utils.timezone.now,
                     editable=False,
                     verbose_name='creation time')),
                ('modified_time',
                 model_utils.fields.AutoLastModifiedField(
                     default=django.utils.timezone.now,
                     editable=False,
                     verbose_name='modification time')),
                ('cover',
                 models.ImageField(blank=True,
                                   upload_to=blog.models.post_cover_path,
                                   verbose_name='cover')),
                ('author',
                 models.ForeignKey(on_delete=django.db.models.deletion.CASCADE,
                                   to=settings.AUTH_USER_MODEL)),
                ('category',
                 models.ForeignKey(blank=True,
                                   null=True,
                                   on_delete=django.db.models.deletion.CASCADE,
                                   to='blog.Category',
                                   verbose_name='category')),
            ],
            options={
                'ordering': ['-created_time'],
            },
        ),
        migrations.CreateModel(
            name='Tag',
            fields=[
                ('id',
                 models.AutoField(auto_created=True,
                                  primary_key=True,
                                  serialize=False,
                                  verbose_name='ID')),
                ('name', models.CharField(max_length=100,
                                          verbose_name='name')),
            ],
        ),
        migrations.AddField(
            model_name='post',
            name='tags',
            field=models.ManyToManyField(blank=True,
                                         to='blog.Tag',
                                         verbose_name='tags'),
        ),
    ]
Пример #6
0
class Migration(migrations.Migration):

    dependencies = [
        ('blog', '0003_auto_20180131_2021'),
    ]

    operations = [
        migrations.CreateModel(
            name='Img',
            fields=[
                ('id',
                 models.AutoField(auto_created=True,
                                  primary_key=True,
                                  serialize=False,
                                  verbose_name='ID')),
                ('name',
                 models.CharField(max_length=100, verbose_name='图片名(描述)')),
                ('head_pic',
                 models.ImageField(upload_to='blog/', verbose_name='图片')),
                ('created',
                 models.DateTimeField(auto_now_add=True,
                                      verbose_name='creation time')),
            ],
            options={
                'verbose_name_plural': '图片',
                'ordering': ['-created'],
                'verbose_name': '图片',
            },
        ),
        migrations.AlterModelOptions(
            name='category',
            options={
                'verbose_name': '类别',
                'verbose_name_plural': '类别'
            },
        ),
        migrations.AlterModelOptions(
            name='post',
            options={
                'ordering': ['-created_time'],
                'verbose_name': '文章',
                'verbose_name_plural': '文章'
            },
        ),
        migrations.AlterModelOptions(
            name='tag',
            options={
                'verbose_name': '标签',
                'verbose_name_plural': '标签'
            },
        ),
        migrations.AlterField(
            model_name='category',
            name='cover',
            field=models.ImageField(
                blank=True,
                upload_to='media/covers/categories/%Y/%m/%d/',
                verbose_name='封面(教程使用)'),
        ),
        migrations.AlterField(
            model_name='category',
            name='cover_caption',
            field=models.CharField(blank=True,
                                   max_length=255,
                                   verbose_name='封面标题(教程使用)'),
        ),
        migrations.AlterField(
            model_name='category',
            name='creator',
            field=models.ForeignKey(
                on_delete=django.db.models.deletion.CASCADE,
                to=settings.AUTH_USER_MODEL,
                verbose_name='作者'),
        ),
        migrations.AlterField(
            model_name='category',
            name='description',
            field=models.TextField(blank=True, verbose_name='描述'),
        ),
        migrations.AlterField(
            model_name='category',
            name='genre',
            field=models.PositiveSmallIntegerField(choices=[(1, '普通'),
                                                            (2, '教程')],
                                                   default=1,
                                                   verbose_name='类型'),
        ),
        migrations.AlterField(
            model_name='category',
            name='name',
            field=models.CharField(max_length=100, verbose_name='名字'),
        ),
        migrations.AlterField(
            model_name='category',
            name='resource',
            field=models.URLField(blank=True, verbose_name='资源(废弃)'),
        ),
        migrations.AlterField(
            model_name='category',
            name='slug',
            field=models.SlugField(unique=True, verbose_name='英文名'),
        ),
        migrations.AlterField(
            model_name='category',
            name='status',
            field=models.PositiveSmallIntegerField(blank=True,
                                                   choices=[(1, '进行中'),
                                                            (2, '已完成')],
                                                   null=True,
                                                   verbose_name='状态(教程使用)'),
        ),
        migrations.AlterField(
            model_name='category',
            name='title',
            field=models.CharField(blank=True,
                                   max_length=255,
                                   verbose_name='标题'),
        ),
        migrations.AlterField(
            model_name='post',
            name='author',
            field=models.ForeignKey(
                on_delete=django.db.models.deletion.CASCADE,
                to=settings.AUTH_USER_MODEL,
                verbose_name='作者'),
        ),
        migrations.AlterField(
            model_name='post',
            name='body',
            field=models.TextField(verbose_name='内容'),
        ),
        migrations.AlterField(
            model_name='post',
            name='category',
            field=models.ForeignKey(
                blank=True,
                null=True,
                on_delete=django.db.models.deletion.CASCADE,
                to='blog.Category',
                verbose_name='类别'),
        ),
        migrations.AlterField(
            model_name='post',
            name='cover',
            field=models.ImageField(blank=True,
                                    upload_to=blog.models.post_cover_path,
                                    verbose_name='封面'),
        ),
        migrations.AlterField(
            model_name='post',
            name='created_time',
            field=model_utils.fields.AutoCreatedField(
                default=django.utils.timezone.now,
                editable=False,
                verbose_name='创建时间'),
        ),
        migrations.AlterField(
            model_name='post',
            name='excerpt',
            field=models.CharField(blank=True,
                                   max_length=255,
                                   verbose_name='摘要'),
        ),
        migrations.AlterField(
            model_name='post',
            name='modified_time',
            field=model_utils.fields.AutoLastModifiedField(
                default=django.utils.timezone.now,
                editable=False,
                verbose_name='修改时间'),
        ),
        migrations.AlterField(
            model_name='post',
            name='pub_date',
            field=models.DateTimeField(blank=True,
                                       null=True,
                                       verbose_name='发布时间'),
        ),
        migrations.AlterField(
            model_name='post',
            name='status',
            field=models.PositiveSmallIntegerField(choices=[
                (1, '发布'), (2, '草稿'), (3, '隐藏'), (4, '秘密')
            ],
                                                   default=2,
                                                   verbose_name='状态'),
        ),
        migrations.AlterField(
            model_name='post',
            name='tags',
            field=models.ManyToManyField(blank=True,
                                         to='blog.Tag',
                                         verbose_name='标签'),
        ),
        migrations.AlterField(
            model_name='post',
            name='title',
            field=models.CharField(max_length=255, verbose_name='标题'),
        ),
        migrations.AlterField(
            model_name='post',
            name='views',
            field=models.PositiveIntegerField(default=0,
                                              editable=False,
                                              verbose_name='查看次数'),
        ),
        migrations.AlterField(
            model_name='tag',
            name='name',
            field=models.CharField(max_length=100, verbose_name='名字'),
        ),
    ]