kawaz.apps.products.migrations.0001_initial のソースコード

# -*- coding: utf-8 -*-
from __future__ import unicode_literals

from django.db import models, migrations
import thumbnailfield.fields
import kawaz.apps.products.models
from django.conf import settings


[ドキュメント]class Migration(migrations.Migration): dependencies = [ migrations.swappable_dependency(settings.AUTH_USER_MODEL), ('projects', '0001_initial'), ] operations = [ migrations.CreateModel( name='Category', fields=[ ('id', models.AutoField(serialize=False, primary_key=True, verbose_name='ID', auto_created=True)), ('label', models.CharField(max_length=32, verbose_name='Label', unique=True)), ('description', models.CharField(max_length=128, verbose_name='Description')), ('order', models.PositiveSmallIntegerField(default=0, help_text='この値が小さい順に並びます', verbose_name='Order')), ], options={ 'ordering': ('order', 'pk'), 'verbose_name_plural': 'Categories', 'verbose_name': 'Category', }, bases=(models.Model,), ), migrations.CreateModel( name='PackageRelease', fields=[ ('id', models.AutoField(serialize=False, primary_key=True, verbose_name='ID', auto_created=True)), ('label', models.CharField(max_length=32, verbose_name='Label')), ('version', models.CharField(max_length=32, default='', verbose_name='Version')), ('created_at', models.DateTimeField(auto_now_add=True, verbose_name='Created at')), ('updated_at', models.DateTimeField(auto_now=True, verbose_name='Updated at')), ('file_content', models.FileField(upload_to=kawaz.apps.products.models.PackageRelease._get_upload_path, verbose_name='File')), ('downloads', models.PositiveIntegerField(editable=False, default=0, help_text='The number of downloads', verbose_name='Downloads')), ], options={ 'ordering': ('platform__pk', 'product__pk'), 'verbose_name_plural': 'Package releases', 'abstract': False, 'verbose_name': 'Package release', }, bases=(models.Model,), ), migrations.CreateModel( name='Platform', fields=[ ('id', models.AutoField(serialize=False, primary_key=True, verbose_name='ID', auto_created=True)), ('label', models.CharField(max_length=32, verbose_name='Label', unique=True)), ('icon', models.ImageField(upload_to=kawaz.apps.products.models.Platform._get_upload_path, verbose_name='Icon')), ('order', models.PositiveSmallIntegerField(default=0, help_text='この値が小さい順に並びます', verbose_name='Order')), ], options={ 'ordering': ('order', 'pk'), 'verbose_name_plural': 'Platforms', 'verbose_name': 'Platform', }, bases=(models.Model,), ), migrations.CreateModel( name='Product', fields=[ ('id', models.AutoField(serialize=False, primary_key=True, verbose_name='ID', auto_created=True)), ('title', models.CharField(max_length=128, verbose_name='Title', unique=True)), ('slug', models.SlugField(help_text="It will be used on the url of the product thus it only allow alphabetical or numeric characters, underbar ('_'), and hyphen ('-'). Additionally this value cannot be modified for preventing the URL changes.", verbose_name='Product slug', unique=True)), ('thumbnail', thumbnailfield.fields.ThumbnailField(upload_to=kawaz.apps.products.models.Product._get_thumbnail_upload_path, help_text='This would be used as a product thumbnail image. The aspect ratio of the image should be 16:9.We recommend the image size to be 800 * 450.', verbose_name='Thumbnail')), ('description', models.TextField(max_length=4096, verbose_name='Description')), ('advertisement_image', thumbnailfield.fields.ThumbnailField(upload_to=kawaz.apps.products.models.Product._get_advertisement_image_upload_path, help_text='This would be used in the top page. The aspect ratio of the image should be 16:9We recommend the image size to be 800 * 450', null=True, blank=True, verbose_name='Advertisement Image')), ('trailer', models.URLField(blank=True, help_text='Enter URL of your trailer movie on the YouTube. The movie would be embeded to the product page.', null=True, verbose_name='Trailer')), ('publish_at', models.DateField(verbose_name='Published at')), ('created_at', models.DateTimeField(auto_now_add=True, verbose_name='Created at')), ('updated_at', models.DateTimeField(auto_now=True, verbose_name='Updated at')), ('display_mode', models.CharField(max_length=10, default='normal', help_text="How the product displayed on the top page. To use 'Featured', an 'Advertisement image' is required.", choices=[('featured', 'Fetured: Displayed in the curled cell and the tiled cell on the top page'), ('tiled', 'Tiled: Displayed in the tiled cell on the top page'), ('normal', 'Normal: Displayed only in tiled cell on the detailed page')], verbose_name='Display mode')), ('administrators', models.ManyToManyField(to=settings.AUTH_USER_MODEL, verbose_name='Administrators')), ('categories', models.ManyToManyField(to='products.Category', verbose_name='Categories')), ('last_modifier', models.ForeignKey(to=settings.AUTH_USER_MODEL, editable=False, related_name='last_modified_products', null=True, verbose_name='Last modified by')), ('platforms', models.ManyToManyField(to='products.Platform', verbose_name='Platforms')), ('project', models.OneToOneField(to='projects.Project', related_name='product', null=True, blank=True, verbose_name='Project')), ], options={ 'permissions': (('join_product', 'Can join to the product'), ('quit_product', 'Can quit from the product')), 'ordering': ('display_mode', '-publish_at'), 'verbose_name_plural': 'Products', 'verbose_name': 'Product', }, bases=(models.Model,), ), migrations.CreateModel( name='Screenshot', fields=[ ('id', models.AutoField(serialize=False, primary_key=True, verbose_name='ID', auto_created=True)), ('image', thumbnailfield.fields.ThumbnailField(upload_to=kawaz.apps.products.models.Screenshot._get_upload_path, verbose_name='Image')), ('product', models.ForeignKey(to='products.Product', editable=False, related_name='screenshots', verbose_name='Product')), ], options={ 'ordering': ('pk',), 'verbose_name_plural': 'Screen shots', 'verbose_name': 'Screen shot', }, bases=(models.Model,), ), migrations.CreateModel( name='URLRelease', fields=[ ('id', models.AutoField(serialize=False, primary_key=True, verbose_name='ID', auto_created=True)), ('label', models.CharField(max_length=32, verbose_name='Label')), ('version', models.CharField(max_length=32, default='', verbose_name='Version')), ('created_at', models.DateTimeField(auto_now_add=True, verbose_name='Created at')), ('updated_at', models.DateTimeField(auto_now=True, verbose_name='Updated at')), ('url', models.URLField(verbose_name='URL')), ('pageview', models.PositiveIntegerField(editable=False, default=0, help_text='The number of page views', verbose_name='Page view')), ('platform', models.ForeignKey(to='products.Platform', verbose_name='Platform')), ('product', models.ForeignKey(to='products.Product', editable=False, related_name='urlreleases', verbose_name='Product')), ], options={ 'ordering': ('platform__pk', 'product__pk'), 'verbose_name_plural': 'URL releases', 'abstract': False, 'verbose_name': 'URL release', }, bases=(models.Model,), ), migrations.AddField( model_name='packagerelease', name='platform', field=models.ForeignKey(to='products.Platform', verbose_name='Platform'), preserve_default=True, ), migrations.AddField( model_name='packagerelease', name='product', field=models.ForeignKey(to='products.Product', editable=False, related_name='packagereleases', verbose_name='Product'), preserve_default=True, ), ]