class Migration(migrations.Migration): initial = True dependencies = [ ('auth', '0011_update_proxy_permissions'), ] operations = [ migrations.CreateModel( name='City', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('name', models.CharField(max_length=100)), ], options={ 'verbose_name': 'City', 'verbose_name_plural': 'Cities', 'ordering': ['name'], }, ), migrations.CreateModel( name='Country', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('name', models.CharField(max_length=50)), ], options={ 'verbose_name': 'Country', 'verbose_name_plural': 'Countries', 'ordering': ['name'], }, ), migrations.CreateModel( name='Dealer', fields=[ ('user_ptr', models.OneToOneField(auto_created=True, on_delete=django.db.models.deletion.CASCADE, parent_link=True, primary_key=True, serialize=False, to=settings.AUTH_USER_MODEL)), ('title', models.CharField(max_length=100)), ('city', models.ForeignKey(on_delete=django.db.models.deletion.DO_NOTHING, related_name='dealers', to='dealers.City')), ], options={ 'verbose_name': 'Dealer', 'verbose_name_plural': 'Dealers', }, bases=('auth.user',), managers=[ ('objects', django.contrib.auth.models.UserManager()), ], ), migrations.AddField( model_name='city', name='country', field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='cities', to='dealers.Country'), ), migrations.AddIndex( model_name='dealer', index=models.Index(fields=['title'], name='dealers_dea_title_d94ffd_idx'), ), ]
class Migration(migrations.Migration): initial = True dependencies = [] operations = [ migrations.CreateModel( name='User', fields=[ ('password', models.CharField(max_length=128, verbose_name='password')), ('last_login', models.DateTimeField(blank=True, null=True, verbose_name='last login')), ('id', models.AutoField(primary_key=True, serialize=False)), ('email', models.EmailField(max_length=255, unique=True)), ('username', models.CharField(max_length=255, unique=True)), ('first_name', models.CharField(max_length=255)), ('last_name', models.CharField(max_length=255)), ('is_active', models.BooleanField(default=True)), ('is_staff', models.BooleanField(default=False)), ('is_superuser', models.BooleanField(default=False)), ('created_on', models.DateTimeField(auto_now_add=True)), ('updated_on', models.DateTimeField(auto_now=True)), ], managers=[ ('objects', django.contrib.auth.models.UserManager()), ], ), migrations.AddIndex( model_name='user', index=models.Index(fields=['username'], name='users_user_usernam_65d164_idx'), ), migrations.AddIndex( model_name='user', index=models.Index(fields=['id'], name='users_user_id_1cecd0_idx'), ), ]
class Migration(migrations.Migration): initial = True dependencies = [ ('auth', '0011_update_proxy_permissions'), ] operations = [ migrations.CreateModel( name='MyUser', fields=[ ('user_ptr', models.OneToOneField( auto_created=True, on_delete=django.db.models.deletion.CASCADE, parent_link=True, primary_key=True, serialize=False, to=settings.AUTH_USER_MODEL)), ('user_id', models.UUIDField(default=uuid.uuid4, editable=False, unique=True)), ('display_name', models.CharField(blank=True, max_length=300, null=True, unique=True)), ('points', models.IntegerField(db_index=True, default=0)), ], bases=('auth.user', ), managers=[ ('objects', django.contrib.auth.models.UserManager()), ], ), migrations.AddIndex( model_name='myuser', index=models.Index(fields=['-points'], name='user_myuser_points_46270d_idx'), ), ]
class Migration(migrations.Migration): initial = True dependencies = [ ('auth', '0009_alter_user_last_name_max_length'), ] operations = [ migrations.CreateModel( name='User', 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')), ('username', models.CharField( error_messages={ 'unique': 'A user with that username already exists.' }, help_text= 'Required. 150 characters or fewer. Letters, digits and @/./+/-/_ only.', max_length=150, unique=True, validators=[ django.contrib.auth.validators. UnicodeUsernameValidator() ], verbose_name='username')), ('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')), ('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': 'user', 'verbose_name_plural': 'users', 'abstract': False, }, managers=[ ('objects', django.contrib.auth.models.UserManager()), ], ), migrations.CreateModel( name='Franchise', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('name', models.CharField(max_length=255)), ('user', models.ForeignKey( null=True, on_delete=django.db.models.deletion.SET_NULL, to=settings.AUTH_USER_MODEL)), ], options={ 'abstract': False, }, ), migrations.CreateModel( name='Purchasable', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('name', models.CharField(max_length=255)), ('base_price', models.DecimalField(decimal_places=10, max_digits=19)), ('franchise', models.ForeignKey( null=True, on_delete=django.db.models.deletion.SET_NULL, to='kiorder.Franchise')), ], options={ 'abstract': False, }, ), migrations.CreateModel( name='PurchasableCategory', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('name', models.CharField(max_length=255)), ('franchise', models.ForeignKey( null=True, on_delete=django.db.models.deletion.SET_NULL, to='kiorder.Franchise')), ('purchasables', sortedm2m.fields.SortedManyToManyField( help_text=None, to='kiorder.Purchasable')), ('user', models.ForeignKey( null=True, on_delete=django.db.models.deletion.SET_NULL, to=settings.AUTH_USER_MODEL)), ], options={ 'abstract': False, }, ), migrations.CreateModel( name='PurchasableOption', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('name', models.CharField(max_length=255)), ('base_price', models.DecimalField(decimal_places=10, max_digits=19)), ('max_capacity', models.IntegerField()), ], ), migrations.CreateModel( name='Store', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('name', models.CharField(max_length=255)), ('location', django.contrib.gis.db.models.fields.PointField(srid=4326)), ('timezone', models.TextField()), ('next_number', models.IntegerField(default=0)), ('franchise', models.ForeignKey(null=True, on_delete=django.db.models.deletion.CASCADE, to='kiorder.Franchise')), ('purchasable_categories', sortedm2m.fields.SortedManyToManyField( help_text=None, to='kiorder.PurchasableCategory')), ('user', models.ForeignKey( null=True, on_delete=django.db.models.deletion.SET_NULL, to=settings.AUTH_USER_MODEL)), ], options={ 'abstract': False, }, ), migrations.CreateModel( name='Ticket', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('state', models.CharField(choices=[('todo', 'Todo'), ('doing', 'Doing'), ('done', 'Done')], default='todo', max_length=16)), ('number', models.IntegerField()), ('removed', models.BooleanField(default=False)), ('denorm_data', models.TextField()), ('created_at', models.DateTimeField(auto_now_add=True)), ('updated_at', models.DateTimeField(auto_now=True)), ('store', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='kiorder.Store')), ], ), migrations.CreateModel( name='Tx', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('utxid', models.CharField(max_length=255, unique=True)), ('reversed', models.BooleanField(default=False)), ('purchase_type', models.CharField(max_length=255, null=True)), ('purchase_data', models.TextField()), ('total_price', models.DecimalField(decimal_places=10, max_digits=19)), ('extra_props', models.TextField()), ('part_ref', models.TextField()), ('created_at', models.DateTimeField(auto_now_add=True)), ('updated_at', models.DateTimeField(auto_now=True)), ('store', models.ForeignKey( null=True, on_delete=django.db.models.deletion.SET_NULL, to='kiorder.Store')), ('user', models.ForeignKey( null=True, on_delete=django.db.models.deletion.SET_NULL, to=settings.AUTH_USER_MODEL)), ], ), migrations.CreateModel( name='TxCredit', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('amount', models.DecimalField(decimal_places=10, max_digits=19)), ('reverse', models.BooleanField(default=False)), ('customer_name', models.CharField(max_length=255)), ('customer_ref', models.CharField(max_length=255)), ('customer_bank', models.CharField(max_length=255)), ('value_date', models.DateField()), ('created_at', models.DateTimeField(auto_now_add=True)), ('updated_at', models.DateTimeField(auto_now=True)), ('tx', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='kiorder.Tx')), ], ), migrations.CreateModel( name='TxItem', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('purchasable_name', models.CharField(max_length=255)), ('purchasable_base_price', models.DecimalField(decimal_places=10, max_digits=19)), ('qty', models.IntegerField()), ('price', models.DecimalField(decimal_places=10, max_digits=19)), ('total_price', models.DecimalField(decimal_places=10, max_digits=19)), ('purchasable', models.ForeignKey( null=True, on_delete=django.db.models.deletion.SET_NULL, to='kiorder.Purchasable')), ('tx', models.ForeignKey(null=True, on_delete=django.db.models.deletion.CASCADE, to='kiorder.Tx')), ], ), migrations.CreateModel( name='TxItemOption', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('purchasable_option_name', models.CharField(max_length=255)), ('base_price', models.DecimalField(decimal_places=10, max_digits=19)), ('qty', models.IntegerField()), ('total_price', models.DecimalField(decimal_places=10, max_digits=19)), ('purchasable_option', models.ForeignKey( null=True, on_delete=django.db.models.deletion.SET_NULL, to='kiorder.PurchasableOption')), ('tx_item', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='kiorder.TxItem')), ], ), migrations.CreateModel( name='TxLog', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('utxid', models.CharField(max_length=255, unique=True)), ('reversed', models.BooleanField(default=False)), ('purchase_type', models.CharField(max_length=255, null=True)), ('purchase_data', models.TextField()), ('total_price', models.DecimalField(decimal_places=10, max_digits=19)), ('extra_props', models.TextField()), ('part_ref', models.TextField()), ('created_at', models.DateTimeField(auto_now_add=True)), ('updated_at', models.DateTimeField(auto_now=True)), ('state', models.CharField(choices=[('ready', 'Ready'), ('pending', 'Pending'), ('done', 'Done'), ('cancelled', 'Cancelled'), ('rollback', 'Rolled back')], default='ready', max_length=16)), ('store', models.ForeignKey( null=True, on_delete=django.db.models.deletion.SET_NULL, to='kiorder.Store')), ('tx', models.ForeignKey( null=True, on_delete=django.db.models.deletion.SET_NULL, to='kiorder.Tx')), ('user', models.ForeignKey( null=True, on_delete=django.db.models.deletion.SET_NULL, to=settings.AUTH_USER_MODEL)), ], options={ 'abstract': False, }, ), migrations.AddField( model_name='txitem', name='tx_log', field=models.ForeignKey( null=True, on_delete=django.db.models.deletion.SET_NULL, to='kiorder.TxLog'), ), migrations.AddField( model_name='ticket', name='tx', field=models.ForeignKey( on_delete=django.db.models.deletion.CASCADE, to='kiorder.Tx'), ), migrations.AddField( model_name='ticket', name='user', field=models.ForeignKey( null=True, on_delete=django.db.models.deletion.SET_NULL, to=settings.AUTH_USER_MODEL), ), migrations.AddField( model_name='purchasable', name='purchasable_options', field=sortedm2m.fields.SortedManyToManyField( help_text=None, to='kiorder.PurchasableOption'), ), migrations.AddField( model_name='purchasable', name='user', field=models.ForeignKey( null=True, on_delete=django.db.models.deletion.SET_NULL, to=settings.AUTH_USER_MODEL), ), migrations.AddIndex( model_name='tx', index=models.Index(fields=['user', 'created_at'], name='kiorder_tx_user_id_4d9149_idx'), ), migrations.AddIndex( model_name='tx', index=models.Index(fields=['user', 'store', 'created_at'], name='kiorder_tx_user_id_4b2e1c_idx'), ), migrations.AddIndex( model_name='ticket', index=models.Index(fields=['store', 'removed', 'created_at'], name='kiorder_tic_store_i_132ade_idx'), ), ]
class Migration(migrations.Migration): initial = True dependencies = [ ('auth', '0011_update_proxy_permissions'), ] operations = [ migrations.CreateModel( name='User', 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')), ('username', models.CharField( error_messages={ 'unique': 'A user with that username already exists.' }, help_text= 'Required. 150 characters or fewer. Letters, digits and @/./+/-/_ only.', max_length=150, unique=True, validators=[ django.contrib.auth.validators. UnicodeUsernameValidator() ], verbose_name='username')), ('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')), ('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')), ('is_student', models.BooleanField(default=False)), ('is_teacher', models.BooleanField(default=False)), ('email', models.EmailField(max_length=254, unique=True)), ('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')), ], managers=[ ('objects', django.contrib.auth.models.UserManager()), ], ), migrations.CreateModel( name='Answer', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('text', models.CharField(max_length=255, verbose_name='Answer')), ('is_correct', models.BooleanField(default=False, verbose_name='Correct answer')), ], ), migrations.CreateModel( name='Attempt', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('score', models.FloatField()), ('over', models.BooleanField(default=False)), ('date', models.DateTimeField(auto_now_add=True)), ], ), migrations.CreateModel( name='Subject', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('name', models.CharField(max_length=30)), ('color', models.CharField(default='#007bff', max_length=7)), ], ), migrations.CreateModel( name='Student', fields=[ ('user', models.OneToOneField( on_delete=django.db.models.deletion.CASCADE, primary_key=True, serialize=False, to=settings.AUTH_USER_MODEL)), ('interests', models.ManyToManyField(related_name='interested_students', to='classroom.Subject')), ], ), migrations.CreateModel( name='Quiz', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('name', models.CharField(max_length=255)), ('averageScore', models.FloatField(default=0)), ('owner', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='quizzes', to=settings.AUTH_USER_MODEL)), ('subject', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='quizzes', to='classroom.Subject')), ], ), migrations.CreateModel( name='Question', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('text', models.CharField(max_length=2550, verbose_name='Question')), ('quiz', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='questions', to='classroom.Quiz')), ], ), migrations.CreateModel( name='attemptQuestion', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('order', models.IntegerField()), ('attempt', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='attempt_q', to='classroom.Attempt')), ('question', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='classroom.Question')), ], ), migrations.CreateModel( name='attemptAnswer', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('submitted', models.BooleanField(default=False)), ('answer', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='a+', to='classroom.Answer')), ('attempt', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='classroom.Attempt')), ('question', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='classroom.Question')), ], ), migrations.AddField( model_name='attempt', name='currquestion', field=models.ForeignKey( default=None, null=True, on_delete=django.db.models.deletion.SET_NULL, to='classroom.Question'), ), migrations.AddField( model_name='attempt', name='quiz', field=models.ForeignKey( on_delete=django.db.models.deletion.CASCADE, related_name='quiz_attempts', to='classroom.Quiz'), ), migrations.AddField( model_name='answer', name='question', field=models.ForeignKey( on_delete=django.db.models.deletion.CASCADE, related_name='answers', to='classroom.Question'), ), migrations.CreateModel( name='TakenQuiz', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('score', models.FloatField()), ('date', models.DateTimeField(auto_now_add=True)), ('quiz', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='taken_quizzes', to='classroom.Quiz')), ('student', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='taken_quizzes', to='classroom.Student')), ], ), migrations.CreateModel( name='StudentAnswer', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('answer', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='+', to='classroom.Answer')), ('student', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='quiz_answers', to='classroom.Student')), ], ), migrations.AddField( model_name='student', name='quizzes', field=models.ManyToManyField(through='classroom.TakenQuiz', to='classroom.Quiz'), ), migrations.AddIndex( model_name='attemptquestion', index=models.Index(fields=['attempt', 'question'], name='classroom_a_attempt_6576ca_idx'), ), migrations.AlterUniqueTogether( name='attemptquestion', unique_together={('order', 'attempt')}, ), migrations.AddField( model_name='attemptanswer', name='student', field=models.ForeignKey( on_delete=django.db.models.deletion.CASCADE, related_name='attempt_answer', to='classroom.Student'), ), migrations.AddField( model_name='attempt', name='student', field=models.ForeignKey( on_delete=django.db.models.deletion.CASCADE, related_name='quiz_attempts', to='classroom.Student'), ), migrations.AlterUniqueTogether( name='user', unique_together={('email', )}, ), migrations.AddIndex( model_name='attemptanswer', index=models.Index(fields=['student'], name='classroom_a_student_a6e0bb_idx'), ), migrations.AddIndex( model_name='attemptanswer', index=models.Index(fields=['answer'], name='classroom_a_answer__5b7ab9_idx'), ), migrations.AddIndex( model_name='attemptanswer', index=models.Index(fields=['attempt', 'question'], name='classroom_a_attempt_e04638_idx'), ), migrations.AddIndex( model_name='attempt', index=models.Index(fields=['student'], name='classroom_a_student_1a21bc_idx'), ), migrations.AddIndex( model_name='attempt', index=models.Index(fields=['quiz'], name='classroom_a_quiz_id_eef64a_idx'), ), ]
class Migration(migrations.Migration): initial = True dependencies = [ ('auth', '0011_update_proxy_permissions'), ] operations = [ migrations.CreateModel( name='mall_user', 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')), ('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(max_length=20, unique=True, verbose_name='用户名,唯一')), ('email', models.CharField(max_length=30, verbose_name='邮箱')), ('phone', models.CharField(max_length=20, verbose_name='手机号')), ('alipay_id', models.CharField(blank=True, max_length=30, verbose_name='支付宝用户号')), ('status', models.IntegerField(choices=[(1, '正常'), (2, '注销'), (3, '异常')], default=1, verbose_name='用户状态')), ('role', models.IntegerField(choices=[(1, '普通用户'), (2, '管理员')], default=1, verbose_name='用户身份')), ('create_time', models.DateTimeField(auto_now_add=True)), ('update_time', models.DateTimeField(auto_now=True)), ], options={ 'db_table': 'mall_user', }, managers=[ ('objects', django.contrib.auth.models.UserManager()), ], ), migrations.CreateModel( name='mall_address', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('user_id', models.IntegerField(verbose_name='用户id')), ('name', models.CharField(max_length=20, verbose_name='收获姓名')), ('phone', models.CharField(max_length=20, verbose_name='收获电话')), ('province', models.CharField(max_length=20)), ('city', models.CharField(max_length=20)), ('district', models.CharField(max_length=20, verbose_name='区/县')), ('detail_address', models.CharField(max_length=30, verbose_name='详细地址')), ('zip_number', models.CharField(default='000000', max_length=20, verbose_name='邮编')), ('create_time', models.DateTimeField(auto_now_add=True)), ('update_time', models.DateTimeField(auto_now=True)), ], options={ 'db_table': 'mall_address', }, ), migrations.CreateModel( name='mall_collect', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('user_id', models.IntegerField(verbose_name='用户id')), ('product_id', models.IntegerField(verbose_name='商品id')), ('create_time', models.DateTimeField(auto_now_add=True)), ('update_time', models.DateTimeField(auto_now=True)), ], options={ 'db_table': 'mall_collect', }, ), migrations.AddIndex( model_name='mall_collect', index=models.Index(fields=['user_id'], name='user_id_idx'), ), migrations.AddIndex( model_name='mall_address', index=models.Index(fields=['user_id'], name='user_id_idx'), ), migrations.AddField( model_name='mall_user', name='groups', field=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'), ), migrations.AddField( model_name='mall_user', name='user_permissions', field=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'), ), migrations.AddIndex( model_name='mall_user', index=models.Index(fields=['username'], name='username_unique'), ), ]
class Migration(migrations.Migration): initial = True dependencies = [ ('contenttypes', '0002_remove_content_type_name'), ('cm', '0083_add_product_category'), ('auth', '0012_alter_user_first_name_max_length'), ('guardian', '0002_generic_permissions_index'), ] operations = [ migrations.CreateModel( name='Group', fields=[ ( 'group_ptr', models.OneToOneField( auto_created=True, on_delete=django.db.models.deletion.CASCADE, parent_link=True, primary_key=True, serialize=False, to='auth.group', ), ), ('description', models.CharField(max_length=255, null=True)), ('built_in', models.BooleanField(default=False)), ], bases=('auth.group',), managers=[ ('objects', django.contrib.auth.models.GroupManager()), ], ), migrations.CreateModel( name='RoleMigration', fields=[ ('version', models.PositiveIntegerField(primary_key=True, serialize=False)), ('date', models.DateTimeField(auto_now=True)), ], ), migrations.CreateModel( name='User', fields=[ ( 'user_ptr', models.OneToOneField( auto_created=True, on_delete=django.db.models.deletion.CASCADE, parent_link=True, primary_key=True, serialize=False, to='auth.user', ), ), ('profile', models.JSONField(default=str)), ('built_in', models.BooleanField(default=False)), ], options={ 'verbose_name': 'user', 'verbose_name_plural': 'users', 'abstract': False, }, bases=('auth.user',), managers=[ ('objects', django.contrib.auth.models.UserManager()), ], ), migrations.RunPython(upgrade_users), migrations.RunPython(update_status_user), migrations.CreateModel( name='Role', fields=[ ( 'id', models.AutoField( auto_created=True, primary_key=True, serialize=False, verbose_name='ID' ), ), ('name', models.CharField(max_length=160)), ('description', models.TextField(blank=True)), ('display_name', models.CharField(default='', max_length=160)), ('module_name', models.CharField(max_length=32)), ('class_name', models.CharField(max_length=32)), ('init_params', models.JSONField(default=dict)), ('built_in', models.BooleanField(default=True)), ( 'type', models.CharField( choices=[('business', 'business'), ('role', 'role'), ('hidden', 'hidden')], default='role', max_length=32, ), ), ('any_category', models.BooleanField(default=False)), ( 'parametrized_by_type', models.JSONField(default=list, validators=[rbac.models.validate_object_type]), ), ( 'bundle', models.ForeignKey( default=None, null=True, on_delete=django.db.models.deletion.CASCADE, to='cm.bundle', ), ), ('category', models.ManyToManyField(to='cm.ProductCategory')), ('child', models.ManyToManyField(blank=True, to='rbac.Role')), ('permissions', models.ManyToManyField(blank=True, to='auth.Permission')), ], ), migrations.CreateModel( name='PolicyPermission', fields=[ ( 'id', models.AutoField( auto_created=True, primary_key=True, serialize=False, verbose_name='ID' ), ), ( 'group', models.ForeignKey( default=None, null=True, on_delete=django.db.models.deletion.CASCADE, to='rbac.group', ), ), ( 'permission', models.ForeignKey( default=None, null=True, on_delete=django.db.models.deletion.CASCADE, to='auth.permission', ), ), ( 'user', models.ForeignKey( default=None, null=True, on_delete=django.db.models.deletion.CASCADE, to='rbac.user', ), ), ], ), migrations.CreateModel( name='PolicyObject', fields=[ ( 'id', models.AutoField( auto_created=True, primary_key=True, serialize=False, verbose_name='ID' ), ), ('object_id', models.PositiveIntegerField()), ( 'content_type', models.ForeignKey( on_delete=django.db.models.deletion.CASCADE, to='contenttypes.contenttype' ), ), ], ), migrations.CreateModel( name='Policy', fields=[ ( 'id', models.AutoField( auto_created=True, primary_key=True, serialize=False, verbose_name='ID' ), ), ('name', models.CharField(max_length=255, unique=True)), ('description', models.TextField(blank=True)), ('built_in', models.BooleanField(default=True)), ('group', models.ManyToManyField(blank=True, to='rbac.Group')), ( 'group_object_perm', models.ManyToManyField(blank=True, to='guardian.GroupObjectPermission'), ), ('model_perm', models.ManyToManyField(blank=True, to='rbac.PolicyPermission')), ('object', models.ManyToManyField(blank=True, to='rbac.PolicyObject')), ( 'role', models.ForeignKey( null=True, on_delete=django.db.models.deletion.SET_NULL, to='rbac.role' ), ), ('user', models.ManyToManyField(blank=True, to='rbac.User')), ( 'user_object_perm', models.ManyToManyField(blank=True, to='guardian.UserObjectPermission'), ), ], ), migrations.AddIndex( model_name='role', index=models.Index(fields=['name', 'display_name'], name='rbac_role_name_b010fa_idx'), ), migrations.RunSQL( ''' CREATE INDEX auth_user_name_b010fa_idx ON auth_user (username, first_name, last_name, email); ''' ), migrations.RunSQL( ''' CREATE INDEX auth_group_name_b010fa_idx ON auth_group (name); ''' ), migrations.AddConstraint( model_name='role', constraint=models.UniqueConstraint(fields=('name', 'built_in'), name='unique_name'), ), migrations.AddConstraint( model_name='role', constraint=models.UniqueConstraint( fields=('display_name', 'built_in'), name='unique_display_name' ), ), migrations.AddConstraint( model_name='policyobject', constraint=models.UniqueConstraint( fields=('content_type', 'object_id'), name='unique_policy_object' ), ), ]
class Migration(migrations.Migration): initial = True dependencies = [ ('auth', '0012_alter_user_first_name_max_length'), ] operations = [ migrations.CreateModel( name='CustomUser', fields=[ ('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')), ('username', models.CharField( error_messages={ 'unique': 'A user with that username already exists.' }, help_text= 'Required. 150 characters or fewer. Letters, digits and @/./+/-/_ only.', max_length=150, unique=True, validators=[ django.contrib.auth.validators. UnicodeUsernameValidator() ], verbose_name='username')), ('first_name', models.CharField(blank=True, max_length=150, 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')), ('id', models.UUIDField(default=uuid.uuid4, editable=False, primary_key=True, serialize=False)), ('published', models.BooleanField(default=False)), ('developer', models.BooleanField(default=False)), ('designer', models.BooleanField(default=False)), ('description', models.TextField(blank=True)), ('country', django_countries.fields.CountryField(max_length=2)), ('job_type', multiselectfield.db.fields.MultiSelectField( blank=True, choices=[('Full-time', 'Full-time'), ('Part-time', 'Part-time'), ('Contract', 'Contract'), ('Internship', 'Internship')], max_length=200)), ('experience', multiselectfield.db.fields.MultiSelectField( blank=True, choices=[('Junior', 'Junior'), ('Intermediate', 'Intermediate'), ('Senior', 'Senior'), ('Intern', 'Intern')], max_length=200)), ('skills', multiselectfield.db.fields.MultiSelectField( blank=True, choices=[ ('Agile', 'Agile'), ('Amazon Web Services', 'Amazon Web Services'), ('AngularJS', 'AngularJS'), ('Ansible', 'Ansible'), ('AI', 'AI'), ('Apache', 'Apache'), ('Artificial Intelligence', 'Artificial Intelligence'), ('Backbone.js', 'Backbone.js'), ('Backend Development', 'Backend Development'), ('Big Data', 'Big Data'), ('Blockchain', 'Blockchain'), ('Objective-C', 'Objective-C'), ('C#', 'C#'), ('C++', 'C++'), ('Celery', 'Celery'), ('CouchDB', 'CouchDB'), ('CSS3', 'CSS3'), ('Cryptocurrency', 'Cryptocurrency'), ('DevOps', 'DevOps'), ('Docker', 'Docker'), ('Django ', 'Django '), ('Django Rest Framework', 'Django Rest Framework'), ('Docker', 'Docker'), ('Elasticsearch', 'Elasticsearch'), ('Ember.js', 'Ember.js'), ('Fabric', 'Fabric'), ('Flask', 'Flask'), ('Frontend Development', 'Frontend Development'), ('Fullstack Development', 'Fullstack Development'), ('Gatsby.js', 'Gatsby.js'), ('Git', 'Git'), ('Google Cloud Platform', 'Google Cloud Platform'), ('GraphQL', 'GraphQL'), ('Gunicorn', 'Gunicorn'), ('Hadoop', 'Hadoop'), ('Heroku', 'Heroku'), ('Hugo', 'Hugo'), ('Java', 'Java'), ('JavaScript', 'JavaScript'), ('Jenkins', 'Jenkins'), ('jQuery', 'jQuery'), ('Kafka', 'Kafka'), ('Kotlin', 'Kotlin'), ('Kubernetes', 'Kubernetes'), ('Linux', 'Linux'), ('Machine Learning', 'Machine Learning'), ('Matplotlib', 'Matplotlib'), ('Memcached', 'Memcached'), ('Mercurial', 'Mercurial'), ('Microsoft Azure', 'Microsoft Azure'), ('MongoDB', 'MongoDB'), ('Natural Language Processing', 'Natural Language Processing'), ('.NET', '.NET'), ('Nginx', 'Nginx'), ('NumPy', 'NumPy'), ('Pandas', 'Pandas'), ('PostegreSQL', 'PostegreSQL'), ('PyQt', 'PyQt'), ('Pyramid', 'Pyramid'), ('PySide', 'PySide'), ('Python', 'Python'), ('PyTorch', 'PyTorch'), ('RabbitMQ', 'RabbitMQ'), ('Redis', 'Redis'), ('React.js', 'React.js'), ('React Native', 'React Native'), ('REST', 'REST'), ('SaltStack', 'SaltStack'), ('Sass', 'Sass'), ('Scala', 'Scala'), ('SciPy', 'SciPy'), ('Scrapy', 'Scrapy'), ('Scrum', 'Scrum'), ('Security', 'Security'), ('Selenium', 'Selenium'), ('Solr', 'Solr'), ('Spark', 'Spark'), ('SQL', 'SQL'), ('SQLAlchemy', 'SQLAlchemy'), ('Swift', 'Swift'), ('TensorFlow', 'TensorFlow'), ('Terraform', 'Terraform'), ('Test-Driven Development', 'Test-Driven Development'), ('Tornado', 'Tornado'), ('TypeScript', 'TypeScript'), ('UI', 'UI'), ('uWSGI', 'uWSGI'), ('UX', 'UX'), ('Vagrant', 'Vagrant'), ('Virtualenv', 'Virtualenv'), ('VR', 'VR'), ('Visualization', 'Visualization'), ('Vue.js', 'Vue.js'), ('Web Development', 'Web Development'), ('Web Scraping', 'Web Scraping') ], max_length=1000)), ('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')), ], managers=[ ('objects', django.contrib.auth.models.UserManager()), ], ), migrations.AddIndex( model_name='customuser', index=models.Index(fields=['id'], name='user_id_index'), ), ]
class Migration(migrations.Migration): initial = True dependencies = [ ('auth', '0012_alter_user_first_name_max_length'), ] operations = [ migrations.CreateModel( name='User', fields=[ ('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')), ('username', models.CharField(error_messages={'unique': 'A user with that username already exists.'}, help_text='Required. 150 characters or fewer. Letters, digits and @/./+/-/_ only.', max_length=150, unique=True, validators=[django.contrib.auth.validators.UnicodeUsernameValidator()], verbose_name='username')), ('first_name', models.CharField(blank=True, max_length=150, 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')), ('id', models.UUIDField(default=uuid.uuid4, editable=False, primary_key=True, serialize=False)), ('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': 'user', 'verbose_name_plural': 'users', 'abstract': False, }, managers=[ ('objects', django.contrib.auth.models.UserManager()), ], ), migrations.CreateModel( name='Post', fields=[ ('id', models.UUIDField(default=uuid.uuid4, editable=False, primary_key=True, serialize=False)), ('created_at', models.DateTimeField(auto_now_add=True)), ('updated_at', models.DateTimeField(auto_now=True)), ('content', models.TextField(max_length=500)), ('user', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='posts', to=settings.AUTH_USER_MODEL, verbose_name='User')), ], options={ 'verbose_name_plural': 'Posts', 'ordering': ['-created_at'], }, ), migrations.CreateModel( name='Like', fields=[ ('id', models.UUIDField(default=uuid.uuid4, editable=False, primary_key=True, serialize=False)), ('created_at', models.DateTimeField(auto_now_add=True)), ('updated_at', models.DateTimeField(auto_now=True)), ('post', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='likes', to='network.post', verbose_name='Post')), ('related_user', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='liked', to=settings.AUTH_USER_MODEL, verbose_name='User')), ], options={ 'verbose_name_plural': 'Likes', 'ordering': ['-related_user'], }, ), migrations.CreateModel( name='Follow', fields=[ ('id', models.UUIDField(default=uuid.uuid4, editable=False, primary_key=True, serialize=False)), ('created_at', models.DateTimeField(auto_now_add=True)), ('updated_at', models.DateTimeField(auto_now=True)), ('follower', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='following', to=settings.AUTH_USER_MODEL, verbose_name='Follower')), ('user', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='followers', to=settings.AUTH_USER_MODEL, verbose_name='User')), ], options={ 'verbose_name_plural': 'Follows', 'ordering': ['follower'], }, ), migrations.AddIndex( model_name='post', index=models.Index(fields=['user'], name='network_pos_user_id_ae42ab_idx'), ), migrations.AddIndex( model_name='post', index=models.Index(fields=['-created_at'], name='network_pos_created_790e9f_idx'), ), migrations.AddIndex( model_name='like', index=models.Index(fields=['post'], name='network_lik_post_id_b08fd4_idx'), ), migrations.AddIndex( model_name='like', index=models.Index(fields=['related_user'], name='network_lik_related_0a50d2_idx'), ), migrations.AddIndex( model_name='follow', index=models.Index(fields=['user'], name='network_fol_user_id_ecab50_idx'), ), migrations.AddIndex( model_name='follow', index=models.Index(fields=['follower'], name='network_fol_followe_945b3b_idx'), ), ]
class Migration(migrations.Migration): initial = True dependencies = [ ('auth', '0012_alter_user_first_name_max_length'), ] operations = [ migrations.CreateModel( name='Users', fields=[ ('id', models.BigAutoField(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')), ('username', models.CharField( error_messages={ 'unique': 'A user with that username already exists.' }, help_text= 'Required. 150 characters or fewer. Letters, digits and @/./+/-/_ only.', max_length=150, unique=True, validators=[ django.contrib.auth.validators. UnicodeUsernameValidator() ], verbose_name='username')), ('first_name', models.CharField(blank=True, max_length=150, 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')), ('phone', models.CharField(max_length=13)), ('Token', models.CharField(max_length=100)), ('isTracker', models.CharField(default='False', max_length=10)), ('exposed', models.CharField(default='False', max_length=10)), ('searchable_email', models.CharField(max_length=256)), ('alias', models.CharField(max_length=100)), ('Verification_code', models.CharField(max_length=200)), ('Trackers', models.CharField(max_length=1000)), ('Location', models.CharField(max_length=256)), ('last_update', models.CharField(max_length=50)), ('email_verified', models.CharField(default='False', max_length=10)), ('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')), ], managers=[ ('objects', django.contrib.auth.models.UserManager()), ], ), migrations.AddIndex( model_name='users', index=models.Index(fields=['phone'], name='TrackerProx_phone_369a5d_idx'), ), ]
class Migration(migrations.Migration): initial = True dependencies = [ ('auth', '0011_update_proxy_permissions'), ] operations = [ migrations.CreateModel( name='User', 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')), ('username', models.CharField( error_messages={ 'unique': 'A user with that username already exists.' }, help_text= 'Required. 150 characters or fewer. Letters, digits and @/./+/-/_ only.', max_length=150, unique=True, validators=[ django.contrib.auth.validators. UnicodeUsernameValidator() ], verbose_name='username')), ('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')), ('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': 'user', 'verbose_name_plural': 'users', 'abstract': False, }, managers=[ ('objects', django.contrib.auth.models.UserManager()), ], ), migrations.CreateModel( name='Message', fields=[ ('id', models.UUIDField(default=uuid.uuid4, primary_key=True, serialize=False)), ('text', models.TextField(max_length=300, verbose_name='text')), ('created_at', models.DateTimeField(default=django.utils.timezone.now, verbose_name='created')), ('author', models.ForeignKey(on_delete=django.db.models.deletion.PROTECT, to=settings.AUTH_USER_MODEL, verbose_name='author')), ], options={ 'verbose_name': 'message', 'verbose_name_plural': 'messages', 'ordering': ('-created_at', ), }, ), migrations.AddIndex( model_name='message', index=models.Index(fields=['-created_at'], name='chat_messag_created_f18bb8_idx'), ), ]
class Migration(migrations.Migration): initial = True dependencies = [ ('auth', '0012_alter_user_first_name_max_length'), ] operations = [ migrations.CreateModel( name='User', 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')), ('username', models.CharField(error_messages={'unique': 'A user with that username already exists.'}, help_text='Required. 150 characters or fewer. Letters, digits and @/./+/-/_ only.', max_length=150, unique=True, validators=[django.contrib.auth.validators.UnicodeUsernameValidator()], verbose_name='username')), ('first_name', models.CharField(blank=True, max_length=150, 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')), ('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': 'user', 'verbose_name_plural': 'users', 'abstract': False, }, managers=[ ('objects', django.contrib.auth.models.UserManager()), ], ), migrations.CreateModel( name='DailyIntakesReport', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('date', models.DateField()), ('daily_norm_potassium_mg', models.PositiveIntegerField(blank=True, null=True)), ('daily_norm_proteins_mg', models.PositiveIntegerField(blank=True, null=True)), ('daily_norm_sodium_mg', models.PositiveIntegerField(blank=True, null=True)), ('daily_norm_phosphorus_mg', models.PositiveIntegerField(blank=True, null=True)), ('daily_norm_energy_kcal', models.PositiveIntegerField(blank=True, null=True)), ('daily_norm_liquids_ml', models.PositiveIntegerField(blank=True, null=True)), ('created_at', models.DateTimeField(auto_now_add=True)), ('updated_at', models.DateTimeField(auto_now=True)), ('user', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='+', to=settings.AUTH_USER_MODEL)), ], ), migrations.CreateModel( name='Product', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('name_lt', models.CharField(max_length=128, unique=True)), ('name_en', models.CharField(max_length=128, null=True)), ('kind', models.CharField(choices=[('Unknown', 'Unknown'), ('Food', 'Food'), ('Drink', 'Drink')], default='Unknown', max_length=16)), ('potassium_mg', models.DecimalField(decimal_places=2, max_digits=7, validators=[django.core.validators.MinValueValidator(Decimal('0'))])), ('proteins_mg', models.DecimalField(decimal_places=2, max_digits=7, validators=[django.core.validators.MinValueValidator(Decimal('0'))])), ('sodium_mg', models.DecimalField(decimal_places=2, max_digits=7, validators=[django.core.validators.MinValueValidator(Decimal('0'))])), ('phosphorus_mg', models.DecimalField(decimal_places=2, max_digits=7, validators=[django.core.validators.MinValueValidator(Decimal('0'))])), ('energy_kcal', models.PositiveSmallIntegerField()), ('liquids_ml', models.PositiveSmallIntegerField()), ('raw_id', models.CharField(blank=True, editable=False, max_length=64, null=True, unique=True)), ('created_at', models.DateTimeField(auto_now_add=True)), ('updated_at', models.DateTimeField(auto_now=True)), ], options={ 'ordering': ('-pk',), }, ), migrations.CreateModel( name='UserProfile', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('gender', models.CharField(choices=[('Male', 'Male'), ('Female', 'Female')], max_length=8)), ('birthday', models.DateField()), ('height_cm', models.PositiveSmallIntegerField()), ('weight_kg', models.DecimalField(decimal_places=1, max_digits=4, validators=[django.core.validators.MinValueValidator(Decimal('10'))])), ('chronic_kidney_disease_years', models.PositiveSmallIntegerField()), ('chronic_kidney_disease_stage', models.CharField(choices=[('Unknown', 'Unknown'), ('Stage1', 'Stage1'), ('Stage2', 'Stage2'), ('Stage3', 'Stage3'), ('Stage4', 'Stage4'), ('Stage5', 'Stage5')], max_length=16)), ('dialysis_type', models.CharField(choices=[('Unknown', 'Unknown'), ('PeriotonicDialysis', 'Periotonicdialysis'), ('Hemodialysis', 'Hemodialysis'), ('PostTransplant', 'Posttransplant'), ('NotPerformed', 'Notperformed')], max_length=32)), ('diabetes_years', models.PositiveSmallIntegerField(blank=True, null=True)), ('diabetes_type', models.CharField(choices=[('Unknown', 'Unknown'), ('Type1', 'Type1'), ('Type2', 'Type2'), ('No', 'No')], default='Unknown', max_length=16)), ('diabetes_complications', models.CharField(choices=[('Unknown', 'Unknown'), ('No', 'No'), ('Yes', 'Yes')], default='Unknown', max_length=8)), ('created_at', models.DateTimeField(auto_now_add=True)), ('updated_at', models.DateTimeField(auto_now=True)), ('user', models.OneToOneField(on_delete=django.db.models.deletion.CASCADE, related_name='profile', to=settings.AUTH_USER_MODEL)), ], ), migrations.CreateModel( name='Intake', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('consumed_at', models.DateTimeField()), ('amount_g', models.PositiveSmallIntegerField(validators=[django.core.validators.MinValueValidator(1)])), ('created_at', models.DateTimeField(auto_now_add=True)), ('updated_at', models.DateTimeField(auto_now=True)), ('daily_report', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='intakes', to='core.dailyintakesreport')), ('product', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='intakes', to='core.product')), ('user', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='+', to=settings.AUTH_USER_MODEL)), ], ), migrations.CreateModel( name='DailyHealthStatus', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('date', models.DateField()), ('systolic_blood_pressure', models.PositiveSmallIntegerField(blank=True, null=True)), ('diastolic_blood_pressure', models.PositiveSmallIntegerField(blank=True, null=True)), ('weight_kg', models.DecimalField(blank=True, decimal_places=1, max_digits=4, null=True, validators=[django.core.validators.MinValueValidator(Decimal('10'))])), ('glucose', models.DecimalField(blank=True, decimal_places=2, max_digits=7, null=True, validators=[django.core.validators.MinValueValidator(Decimal('0'))])), ('urine_ml', models.PositiveSmallIntegerField(blank=True, null=True)), ('swelling_difficulty', models.CharField(choices=[('Unknown', 'Unknown'), ('0+', 'Difficulty0'), ('1+', 'Difficulty1'), ('2+', 'Difficulty2'), ('3+', 'Difficulty3'), ('4+', 'Difficulty4')], default='Unknown', max_length=16)), ('well_feeling', models.CharField(choices=[('Unknown', 'Unknown'), ('Perfect', 'Perfect'), ('Good', 'Good'), ('Average', 'Average'), ('Bad', 'Bad'), ('VeryBad', 'Verybad')], default='Unknown', max_length=16)), ('appetite', models.CharField(choices=[('Unknown', 'Unknown'), ('Perfect', 'Perfect'), ('Good', 'Good'), ('Average', 'Average'), ('Bad', 'Bad'), ('VeryBad', 'Verybad')], default='Unknown', max_length=16)), ('shortness_of_breath', models.CharField(choices=[('Unknown', 'Unknown'), ('No', 'No'), ('Light', 'Light'), ('Average', 'Average'), ('Severe', 'Severe'), ('Backbreaking', 'Backbreaking')], default='Unknown', max_length=16)), ('created_at', models.DateTimeField(auto_now_add=True)), ('updated_at', models.DateTimeField(auto_now=True)), ('user', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='+', to=settings.AUTH_USER_MODEL)), ], ), migrations.AddIndex( model_name='intake', index=models.Index(fields=['user', '-consumed_at'], name='core_intake_user_id_1c31fd_idx'), ), migrations.AddConstraint( model_name='dailyintakesreport', constraint=models.UniqueConstraint(fields=('user', 'date'), name='unique_user_date_daily_intakes_report'), ), migrations.AddConstraint( model_name='dailyhealthstatus', constraint=models.UniqueConstraint(fields=('user', 'date'), name='unique_user_date_daily_health_status'), ), ]
class Migration(migrations.Migration): initial = True dependencies = [ ('auth', '0008_alter_user_username_max_length'), ] operations = [ migrations.CreateModel( name='User', 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')), ('username', models.CharField( error_messages={ 'unique': 'A user with that username already exists.' }, help_text= 'Required. 150 characters or fewer. Letters, digits and @/./+/-/_ only.', max_length=150, unique=True, validators=[ django.contrib.auth.validators. UnicodeUsernameValidator() ], verbose_name='username')), ('first_name', models.CharField(blank=True, max_length=30, verbose_name='first name')), ('last_name', models.CharField(blank=True, max_length=30, 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')), ('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_plural': 'users', 'verbose_name': 'user', 'abstract': False, }, managers=[ ('objects', django.contrib.auth.models.UserManager()), ], ), migrations.CreateModel( name='AbsenceCredit', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('date', models.DateField()), ('duration', models.DurationField(blank=True, null=True)), ], ), migrations.CreateModel( name='AbsenceType', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('name', models.CharField(max_length=50)), ('fill_worktime', models.BooleanField(default=False)), ], ), migrations.CreateModel( name='Employment', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('percentage', models.IntegerField(validators=[ django.core.validators.MinValueValidator(0), django.core.validators.MaxValueValidator(100) ])), ('worktime_per_day', models.DurationField()), ('start_date', models.DateField()), ('end_date', models.DateField(blank=True, null=True)), ], ), migrations.CreateModel( name='Location', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('name', models.CharField(max_length=50, unique=True)), ('workdays', timed.models.WeekdaysField(choices=[(1, 'Monday'), (2, 'Tuesday'), (3, 'Wednesday'), (4, 'Thursday'), (5, 'Friday'), (6, 'Saturday'), (7, 'Sunday')], default=['1', '2', '3', '4', '5'], max_length=13)), ], ), migrations.CreateModel( name='OvertimeCredit', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('date', models.DateField()), ('duration', models.DurationField(blank=True, null=True)), ('user', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='overtime_credits', to=settings.AUTH_USER_MODEL)), ], ), migrations.CreateModel( name='PublicHoliday', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('name', models.CharField(max_length=50)), ('date', models.DateField()), ('location', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='public_holidays', to='employment.Location')), ], ), migrations.AddField( model_name='employment', name='location', field=models.ForeignKey( on_delete=django.db.models.deletion.CASCADE, to='employment.Location'), ), migrations.AddField( model_name='employment', name='user', field=models.ForeignKey( on_delete=django.db.models.deletion.CASCADE, related_name='employments', to=settings.AUTH_USER_MODEL), ), migrations.AddField( model_name='absencecredit', name='absence_type', field=models.ForeignKey( on_delete=django.db.models.deletion.CASCADE, to='employment.AbsenceType'), ), migrations.AddField( model_name='absencecredit', name='user', field=models.ForeignKey( on_delete=django.db.models.deletion.CASCADE, related_name='absence_credits', to=settings.AUTH_USER_MODEL), ), migrations.AddIndex( model_name='publicholiday', index=models.Index(fields=['date'], name='employment__date_2d002c_idx'), ), migrations.AddIndex( model_name='employment', index=models.Index(fields=['start_date', 'end_date'], name='employment__start_d_74c274_idx'), ), ]
class Migration(migrations.Migration): initial = True dependencies = [ ('auth', '0012_alter_user_first_name_max_length'), ] operations = [ migrations.CreateModel( name='User', fields=[ ('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')), ('username', models.CharField( error_messages={ 'unique': 'A user with that username already exists.' }, help_text= 'Required. 150 characters or fewer. Letters, digits and @/./+/-/_ only.', max_length=150, unique=True, validators=[ django.contrib.auth.validators. UnicodeUsernameValidator() ], verbose_name='username')), ('first_name', models.CharField(blank=True, max_length=150, 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')), ('user_id', models.AutoField(primary_key=True, serialize=False)), ('date_of_birth', models.DateTimeField(blank=True, null=True)), ('modified_datetime', models.DateTimeField()), ('deleted_at_datetime', models.DateTimeField(blank=True, null=True)), ('last_logout_datetime', models.DateTimeField(blank=True, null=True)), ('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={ 'db_table': 'users', }, managers=[ ('objects', django.contrib.auth.models.UserManager()), ], ), migrations.CreateModel( name='UserFollow', fields=[ ('user_follow_id', models.AutoField(primary_key=True, serialize=False)), ('follow_datetime', models.DateTimeField()), ('unfollow_datetime', models.DateTimeField(blank=True, null=True)), ('followee', models.ForeignKey( on_delete=django.db.models.deletion.DO_NOTHING, related_name='followee', to=settings.AUTH_USER_MODEL)), ('follower', models.ForeignKey( on_delete=django.db.models.deletion.DO_NOTHING, related_name='follower', to=settings.AUTH_USER_MODEL)), ], options={ 'db_table': 'user_follows', }, ), migrations.CreateModel( name='Photo', fields=[ ('photo_id', models.AutoField(primary_key=True, serialize=False)), ('locator', models.CharField(max_length=255)), ('caption', models.TextField(blank=True, max_length=2200, null=True)), ('photo_lat', models.FloatField(blank=True, null=True)), ('photo_long', models.FloatField(blank=True, null=True)), ('user_lat', models.FloatField(blank=True, null=True)), ('user_long', models.FloatField(blank=True, null=True)), ('created_datetime', models.DateTimeField()), ('user', models.ForeignKey( on_delete=django.db.models.deletion.DO_NOTHING, to=settings.AUTH_USER_MODEL)), ], options={ 'db_table': 'photos', }, ), migrations.AddIndex( model_name='userfollow', index=models.Index(fields=['followee_id'], name='user_follow_followe_aab161_idx'), ), migrations.AddIndex( model_name='userfollow', index=models.Index(fields=['follower_id'], name='user_follow_followe_a0b992_idx'), ), migrations.AlterUniqueTogether( name='userfollow', unique_together={('followee_id', 'follower_id')}, ), ]
class Migration(migrations.Migration): initial = True dependencies = [ ('auth', '0009_alter_user_last_name_max_length'), ] operations = [ migrations.CreateModel( name='User', fields=[ ('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(max_length=255, primary_key=True, serialize=False)), ('avatar', models.ImageField(null=True, upload_to='static/avatars')), ('reset_pending', models.BooleanField(default=False)), ('email_verified', models.BooleanField(default=False)), ('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': 'user', 'verbose_name_plural': 'users', 'abstract': False, }, managers=[ ('objects', django.contrib.auth.models.UserManager()), ], ), migrations.CreateModel( name='UserPreference', fields=[ ('hashed', models.CharField(max_length=255, primary_key=True, serialize=False)), ('original', models.TextField()), ('trans', models.TextField()), ('inc', models.IntegerField(default=0)), ('user', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)), ], ), migrations.CreateModel( name='UserTranslation', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('original_text', models.TextField()), ('trans_text', models.TextField()), ('likes', models.IntegerField(default=0)), ('dislikes', models.IntegerField(default=0)), ('time', models.DateTimeField(auto_now_add=True)), ('user', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)), ], ), migrations.CreateModel( name='Vocabulary', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('word', models.CharField(max_length=255)), ('trans', models.CharField(max_length=255)), ('time', models.DateTimeField(auto_now_add=True)), ('count', models.IntegerField(default=1)), ('user', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)), ], ), migrations.AddIndex( model_name='vocabulary', index=models.Index(fields=['word'], name='translator__word_f697b2_idx'), ), migrations.AddIndex( model_name='vocabulary', index=models.Index(fields=['user'], name='translator__user_id_1ad2b8_idx'), ), migrations.AddIndex( model_name='usertranslation', index=models.Index(fields=['original_text'], name='translator__origina_32a7b5_idx'), ), migrations.AddIndex( model_name='usertranslation', index=models.Index(fields=['user'], name='translator__user_id_fb1a92_idx'), ), migrations.AddIndex( model_name='userpreference', index=models.Index(fields=['hashed'], name='translator__hashed_b8eeba_idx'), ), ]
class Migration(migrations.Migration): initial = True dependencies = [ ('auth', '0012_alter_user_first_name_max_length'), ] operations = [ migrations.CreateModel( name='User', 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')), ('username', models.CharField(error_messages={'unique': 'A user with that username already exists.'}, help_text='Required. 150 characters or fewer. Letters, digits and @/./+/-/_ only.', max_length=150, unique=True, validators=[django.contrib.auth.validators.UnicodeUsernameValidator()], verbose_name='username')), ('first_name', models.CharField(blank=True, max_length=150, 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')), ('location', models.CharField(max_length=250, null=True)), ('age', models.IntegerField(null=True)), ('virtual', models.BooleanField(default=False)), ('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')), ], managers=[ ('objects', django.contrib.auth.models.UserManager()), ], ), migrations.CreateModel( name='Book_Club', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('name', models.CharField(max_length=256, null=True)), ('virtual', models.BooleanField(default=False)), ('members', models.ManyToManyField(related_name='book_clubs', to=settings.AUTH_USER_MODEL, verbose_name='Members of the club')), ('virtual_member', models.OneToOneField(null=True, on_delete=django.db.models.deletion.CASCADE, related_name='virtual_member_of', to=settings.AUTH_USER_MODEL)), ], ), migrations.CreateModel( name='Books', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('title', models.CharField(max_length=5125)), ('year', models.IntegerField()), ('authors', models.CharField(max_length=5125, null=True)), ('book_type', models.CharField(max_length=13)), ('isbn', models.CharField(max_length=13, null=True)), ('pages', models.IntegerField()), ('editions', models.IntegerField()), ('alt_titles', models.CharField(max_length=5125, null=True)), ('series_str_1', models.CharField(max_length=5125, null=True)), ('series_str_2', models.CharField(max_length=5125, null=True)), ('original_lang', models.CharField(max_length=40)), ('original_title', models.CharField(max_length=5125, null=True)), ('original_year', models.IntegerField()), ('isfdb_rating', models.FloatField()), ('award_winner', models.BooleanField()), ('juvenile', models.BooleanField()), ('stand_alone', models.BooleanField()), ('inconsistent', models.BooleanField()), ('virtual', models.BooleanField()), ('cover_image', models.CharField(max_length=5125, null=True)), ('wikipedia', models.CharField(max_length=20000, null=True)), ('synopsis', models.CharField(max_length=20000, null=True)), ('note', models.CharField(max_length=5125, null=True)), ('general_search', django.contrib.postgres.search.SearchVectorField(null=True)), ], ), migrations.CreateModel( name='Contents', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('book_title_id', models.IntegerField()), ('content_title_id', models.IntegerField()), ], ), migrations.CreateModel( name='Isbns', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('isbn', models.CharField(max_length=13)), ('title_id', models.IntegerField()), ], ), migrations.CreateModel( name='More_Images', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('title_id', models.IntegerField()), ('image', models.CharField(max_length=5125)), ], ), migrations.CreateModel( name='Translations', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('lowest_title_id', models.IntegerField()), ('title', models.CharField(max_length=5125)), ('year', models.IntegerField()), ('note', models.CharField(max_length=20000)), ], ), migrations.CreateModel( name='Words', fields=[ ('word', models.CharField(max_length=5125, primary_key=True, serialize=False)), ], ), migrations.CreateModel( name='Rating', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('rating', models.FloatField(null=True)), ('predicted_rating', models.FloatField(null=True)), ('original_rating', models.FloatField(null=True)), ('original_min', models.FloatField(null=True)), ('original_max', models.FloatField(null=True)), ('saved', models.BooleanField(default=False)), ('blocked', models.BooleanField(default=False)), ('last_updated', models.DateTimeField(default=django.utils.timezone.now)), ('book', models.ForeignKey(db_constraint=False, on_delete=django.db.models.deletion.DO_NOTHING, to='recsys.books')), ('user', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)), ], ), migrations.CreateModel( name='Meeting', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('date', models.DateField(null=True)), ('book', models.ForeignKey(db_constraint=False, null=True, on_delete=django.db.models.deletion.DO_NOTHING, to='recsys.books')), ('book_club', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='recsys.book_club')), ], ), migrations.CreateModel( name='DataProblem', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('problem', models.CharField(max_length=32768)), ('book', models.ForeignKey(db_constraint=False, on_delete=django.db.models.deletion.DO_NOTHING, to='recsys.books')), ('user', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)), ], ), migrations.AddIndex( model_name='rating', index=models.Index(fields=['book'], name='recsys_rati_book_id_518aef_idx'), ), migrations.AddIndex( model_name='rating', index=models.Index(fields=['user'], name='recsys_rati_user_id_b5734a_idx'), ), migrations.AddIndex( model_name='rating', index=models.Index(fields=['rating'], name='recsys_rati_rating_5905fe_idx'), ), migrations.AddIndex( model_name='rating', index=models.Index(django.db.models.expressions.Func('rating', function='FLOOR'), name='floor_rating_idx'), ), migrations.AddIndex( model_name='rating', index=models.Index(fields=['predicted_rating'], name='recsys_rati_predict_c6b28b_idx'), ), migrations.AddIndex( model_name='rating', index=models.Index(django.db.models.expressions.Func('predicted_rating', function='FLOOR'), name='floor_predicted_rating_idx'), ), migrations.AddIndex( model_name='rating', index=models.Index(fields=['saved'], name='recsys_rati_saved_c7dd82_idx'), ), migrations.AddIndex( model_name='rating', index=models.Index(fields=['blocked'], name='recsys_rati_blocked_750ccc_idx'), ), migrations.AddIndex( model_name='rating', index=models.Index(fields=['last_updated'], name='recsys_rati_last_up_0eed51_idx'), ), migrations.AddConstraint( model_name='rating', constraint=models.UniqueConstraint(fields=('book', 'user'), name='OneRatingPerBookAndUser'), ), migrations.AddConstraint( model_name='rating', constraint=models.CheckConstraint(check=models.Q(('rating__gte', 1)), name='RatingAtLeast1'), ), migrations.AddConstraint( model_name='rating', constraint=models.CheckConstraint(check=models.Q(('rating__lte', 10)), name='RatingAtMost10'), ), migrations.AddConstraint( model_name='rating', constraint=models.CheckConstraint(check=models.Q(('original_rating__gte', django.db.models.expressions.F('original_min'))), name='OriginalRatingAtLeastMin'), ), migrations.AddConstraint( model_name='rating', constraint=models.CheckConstraint(check=models.Q(('original_rating__lte', django.db.models.expressions.F('original_max'))), name='OriginalRatingAtMostMax'), ), migrations.AddIndex( model_name='meeting', index=models.Index(fields=['book_club'], name='recsys_meet_book_cl_0ad746_idx'), ), migrations.AddIndex( model_name='meeting', index=models.Index(fields=['book'], name='recsys_meet_book_id_6789a6_idx'), ), migrations.AddIndex( model_name='meeting', index=models.Index(fields=['date'], name='recsys_meet_date_2bc3c4_idx'), ), migrations.AddIndex( model_name='dataproblem', index=models.Index(fields=['book'], name='recsys_data_book_id_3e8f3f_idx'), ), migrations.AddIndex( model_name='dataproblem', index=models.Index(fields=['user'], name='recsys_data_user_id_ffc661_idx'), ), migrations.AddIndex( model_name='book_club', index=models.Index(fields=['name'], name='recsys_book_name_7d08cf_idx'), ), migrations.AddIndex( model_name='book_club', index=models.Index(fields=['virtual'], name='recsys_book_virtual_5362e6_idx'), ), migrations.AddIndex( model_name='user', index=models.Index(fields=['username'], name='recsys_user_usernam_bbfef3_idx'), ), migrations.AddIndex( model_name='user', index=models.Index(fields=['first_name'], name='recsys_user_first_n_272cb6_idx'), ), ]
class Migration(migrations.Migration): initial = True dependencies = [ ("auth", "0012_alter_user_first_name_max_length"), ] operations = [ migrations.CreateModel( name="User", fields=[ ( "id", models.BigAutoField( 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", ), ), ( "username", models.CharField( error_messages={ "unique": "A user with that username already exists." }, help_text="Required. 150 characters or fewer. Letters, digits and @/./+/-/_ only.", max_length=150, unique=True, validators=[ django.contrib.auth.validators.UnicodeUsernameValidator() ], verbose_name="username", ), ), ( "first_name", models.CharField( blank=True, max_length=150, 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" ), ), ( "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": "user", "verbose_name_plural": "users", "abstract": False, }, managers=[ ("objects", django.contrib.auth.models.UserManager()), ], ), migrations.CreateModel( name="TelegramUser", fields=[ ("chat_id", models.IntegerField(primary_key=True, serialize=False)), ("user_name", models.CharField(blank=True, max_length=255)), ("full_name", models.CharField(blank=True, max_length=255)), ("created_at", models.DateTimeField(auto_now_add=True)), ("updated_at", models.DateTimeField(auto_now=True)), ( "curator_user", models.OneToOneField( on_delete=django.db.models.deletion.CASCADE, related_name="telegram_user", to=settings.AUTH_USER_MODEL, ), ), ], options={ "verbose_name": "Telegram bot user", "verbose_name_plural": "Telegram bot users", }, ), migrations.CreateModel( name="FatsecretUser", fields=[ ("user_id", models.IntegerField(primary_key=True, serialize=False)), ("session_token", models.CharField(blank=True, max_length=255)), ("created_at", models.DateTimeField(auto_now_add=True)), ("updated_at", models.DateTimeField(auto_now=True)), ( "curator_user", models.OneToOneField( on_delete=django.db.models.deletion.CASCADE, related_name="fatsecret_user", to=settings.AUTH_USER_MODEL, ), ), ], options={ "verbose_name": "Fatsecret user", "verbose_name_plural": "Fatsecret users", }, ), migrations.AddIndex( model_name="telegramuser", index=models.Index( fields=["user_name"], name="users_teleg_user_na_f7684a_idx" ), ), migrations.AddIndex( model_name="telegramuser", index=models.Index( fields=["full_name"], name="users_teleg_full_na_5983bd_idx" ), ), migrations.AddIndex( model_name="telegramuser", index=models.Index( fields=["created_at"], name="users_teleg_created_192dfc_idx" ), ), migrations.AddIndex( model_name="telegramuser", index=models.Index( fields=["updated_at"], name="users_teleg_updated_8aae2b_idx" ), ), migrations.AddIndex( model_name="fatsecretuser", index=models.Index( fields=["user_id"], name="users_fatse_user_id_4d1ff1_idx" ), ), migrations.AddIndex( model_name="fatsecretuser", index=models.Index( fields=["session_token"], name="users_fatse_session_b12cdc_idx" ), ), migrations.AddIndex( model_name="fatsecretuser", index=models.Index( fields=["created_at"], name="users_fatse_created_3815a4_idx" ), ), migrations.AddIndex( model_name="fatsecretuser", index=models.Index( fields=["updated_at"], name="users_fatse_updated_2d7402_idx" ), ), ]
class Migration(migrations.Migration): initial = True dependencies = [ ("auth", "0012_alter_user_first_name_max_length"), ] operations = [ migrations.CreateModel( name="User", 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", ), ), ( "username", models.CharField( error_messages={ "unique": "A user with that username already exists." }, help_text= "Required. 150 characters or fewer. Letters, digits and @/./+/-/_ only.", max_length=150, unique=True, validators=[ django.contrib.auth.validators. UnicodeUsernameValidator() ], verbose_name="username", ), ), ( "first_name", models.CharField(blank=True, max_length=150, 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"), ), ( "logo", imagekit.models.fields.ProcessedImageField( blank=True, default="userlogos/user.jpg", upload_to="userlogos/%Y/%m/%d", ), ), ("description", models.TextField(blank=True, verbose_name="About me")), ( "name", models.CharField(db_index=True, max_length=250, verbose_name="full name"), ), ( "date_added", models.DateTimeField( db_index=True, default=django.utils.timezone.now, verbose_name="date added", ), ), ( "is_featured", models.BooleanField(db_index=True, default=False, verbose_name="Is featured"), ), ( "title", models.CharField(blank=True, max_length=250, verbose_name="Title"), ), ( "advancedUser", models.BooleanField(db_index=True, default=False, verbose_name="advanced user"), ), ("media_count", models.IntegerField(default=0)), ( "notification_on_comments", models.BooleanField( default=True, verbose_name= "Whether you will receive email notifications for comments added to your content", ), ), ( "allow_contact", models.BooleanField( default=False, verbose_name= "Whether allow contact will be shown on profile page", ), ), ( "location", models.CharField(blank=True, max_length=250, verbose_name="Location"), ), ( "is_editor", models.BooleanField(db_index=True, default=False, verbose_name="MediaCMS Editor"), ), ( "is_manager", models.BooleanField(db_index=True, default=False, verbose_name="MediaCMS Manager"), ), ( "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={ "ordering": ["-date_added", "name"], }, managers=[ ("objects", django.contrib.auth.models.UserManager()), ], ), migrations.CreateModel( name="Notification", fields=[ ( "id", models.AutoField( auto_created=True, primary_key=True, serialize=False, verbose_name="ID", ), ), ("action", models.CharField(blank=True, max_length=30)), ("notify", models.BooleanField(default=False)), ( "method", models.CharField(choices=[("email", "Email")], default="email", max_length=20), ), ( "user", models.ForeignKey( on_delete=django.db.models.deletion.CASCADE, related_name="notifications", to=settings.AUTH_USER_MODEL, ), ), ], ), migrations.CreateModel( name="Channel", fields=[ ( "id", models.AutoField( auto_created=True, primary_key=True, serialize=False, verbose_name="ID", ), ), ("title", models.CharField(db_index=True, max_length=90)), ("description", models.TextField(blank=True, help_text="description")), ("add_date", models.DateTimeField(auto_now_add=True, db_index=True)), ("friendly_token", models.CharField(blank=True, max_length=12)), ( "banner_logo", imagekit.models.fields.ProcessedImageField( blank=True, default="userlogos/banner.jpg", upload_to="userlogos/%Y/%m/%d", ), ), ( "subscribers", models.ManyToManyField( blank=True, related_name="subscriptions", to=settings.AUTH_USER_MODEL, ), ), ( "user", models.ForeignKey( on_delete=django.db.models.deletion.CASCADE, related_name="channels", to=settings.AUTH_USER_MODEL, ), ), ], ), migrations.AddIndex( model_name="user", index=models.Index(fields=["-date_added", "name"], name="users_user_date_ad_4eb0b8_idx"), ), ]
class Migration(migrations.Migration): initial = True dependencies = [ ('auth', '0011_update_proxy_permissions'), ] operations = [ migrations.CreateModel( name='User', 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')), ('username', models.CharField( error_messages={ 'unique': 'A user with that username already exists.' }, help_text= 'Required. 150 characters or fewer. Letters, digits and @/./+/-/_ only.', max_length=150, unique=True, validators=[ django.contrib.auth.validators. UnicodeUsernameValidator() ], verbose_name='username')), ('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')), ('is_email_verified', models.BooleanField(default=False, verbose_name='Почта подтверждена')), ('is_phone_verified', models.BooleanField(default=False, verbose_name='Телефон подтвержден')), ('uuid', models.UUIDField(default=uuid.uuid4, editable=False, unique=True, verbose_name='uuid')), ('last_activity', models.DateTimeField(auto_now_add=True, verbose_name='Активность')), ('phone', models.CharField(blank=True, max_length=17, unique=True, verbose_name='Телефон')), ('is_deleted', models.BooleanField(default=False, verbose_name='Пользователь удален')), ('is_blocked', models.BooleanField( default=False, 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_plural': 'пользователи', 'verbose_name': 'пользователь', }, managers=[ ('objects', django.contrib.auth.models.UserManager()), ], ), migrations.CreateModel( name='UserBlock', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('blocked_user', models.ForeignKey(db_index=False, on_delete=django.db.models.deletion.CASCADE, related_name='blocked_by_users', to=settings.AUTH_USER_MODEL, verbose_name='Кого блокирует')), ('blocker', models.ForeignKey(db_index=False, on_delete=django.db.models.deletion.CASCADE, related_name='user_blocks', to=settings.AUTH_USER_MODEL, verbose_name='Кто блокирует')), ], ), migrations.CreateModel( name='TwoUserLocation', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('city_ru', models.CharField(blank=True, max_length=100, verbose_name='Город по-русски')), ('city_en', models.CharField(blank=True, max_length=100, verbose_name='Город по-английски')), ('city_lat', models.FloatField(blank=True, null=True, verbose_name='Ширина города')), ('city_lon', models.FloatField(blank=True, null=True, verbose_name='Долгота города')), ('region_ru', models.CharField(blank=True, max_length=100, verbose_name='Регион по-русски')), ('region_en', models.CharField(blank=True, max_length=100, verbose_name='Регион по-английски')), ('country_ru', models.CharField(blank=True, max_length=100, verbose_name='Страна по-русски')), ('country_en', models.CharField(blank=True, max_length=100, verbose_name='Страна по-английски')), ('phone', models.CharField(blank=True, max_length=5, verbose_name='Начало номера')), ('user', models.OneToOneField( on_delete=django.db.models.deletion.CASCADE, related_name='user_location_2', to=settings.AUTH_USER_MODEL, verbose_name='Пользователь')), ], options={ 'verbose_name_plural': 'Местоположения 2', 'verbose_name': 'Местоположение 2', }, ), migrations.CreateModel( name='ThreeUserLocation', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('city_ru', models.CharField(blank=True, max_length=100, verbose_name='Город по-русски')), ('city_en', models.CharField(blank=True, max_length=100, verbose_name='Город по-английски')), ('city_lat', models.FloatField(blank=True, null=True, verbose_name='Ширина города')), ('city_lon', models.FloatField(blank=True, null=True, verbose_name='Долгота города')), ('region_ru', models.CharField(blank=True, max_length=100, verbose_name='Регион по-русски')), ('region_en', models.CharField(blank=True, max_length=100, verbose_name='Регион по-английски')), ('country_ru', models.CharField(blank=True, max_length=100, verbose_name='Страна по-русски')), ('country_en', models.CharField(blank=True, max_length=100, verbose_name='Страна по-английски')), ('phone', models.CharField(blank=True, max_length=5, verbose_name='Начало номера')), ('user', models.OneToOneField( on_delete=django.db.models.deletion.CASCADE, related_name='user_location_3', to=settings.AUTH_USER_MODEL, verbose_name='Пользователь')), ], options={ 'verbose_name_plural': 'Местоположения 3', 'verbose_name': 'Местоположение 3', }, ), migrations.CreateModel( name='Subscribe', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('created', models.DateTimeField(auto_now_add=True, verbose_name='Дата добавления')), ('added_user', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='added_user', to=settings.AUTH_USER_MODEL, verbose_name='На кого подписался')), ('adding_user', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='adding_user', to=settings.AUTH_USER_MODEL, verbose_name='Кто подписался')), ], options={ 'verbose_name_plural': 'Подписки', 'verbose_name': 'Подписки', }, ), migrations.CreateModel( name='OneUserLocation', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('city_ru', models.CharField(blank=True, max_length=100, verbose_name='Город по-русски')), ('city_en', models.CharField(blank=True, max_length=100, verbose_name='Город по-английски')), ('city_lat', models.FloatField(blank=True, null=True, verbose_name='Ширина города')), ('city_lon', models.FloatField(blank=True, null=True, verbose_name='Долгота города')), ('region_ru', models.CharField(blank=True, max_length=100, verbose_name='Регион по-русски')), ('region_en', models.CharField(blank=True, max_length=100, verbose_name='Регион по-английски')), ('country_ru', models.CharField(blank=True, max_length=100, verbose_name='Страна по-русски')), ('country_en', models.CharField(blank=True, max_length=100, verbose_name='Страна по-английски')), ('phone', models.CharField(blank=True, max_length=5, verbose_name='Начало номера')), ('user', models.OneToOneField( on_delete=django.db.models.deletion.CASCADE, related_name='user_location', to=settings.AUTH_USER_MODEL, verbose_name='Пользователь')), ], options={ 'verbose_name_plural': 'Местоположения 1', 'verbose_name': 'Местоположение 1', }, ), migrations.CreateModel( name='IPUser', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('ip_1', models.GenericIPAddressField(blank=True, null=True, verbose_name='ip 1')), ('ip_2', models.GenericIPAddressField(blank=True, null=True, verbose_name='ip 2')), ('ip_3', models.GenericIPAddressField(blank=True, null=True, verbose_name='ip 3')), ('user', models.OneToOneField( on_delete=django.db.models.deletion.CASCADE, related_name='user_ip', to=settings.AUTH_USER_MODEL, verbose_name='Пользователь')), ], options={ 'verbose_name_plural': 'ip пользователей', 'verbose_name': 'ip пользователя', }, ), migrations.CreateModel( name='Guest', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('title', models.CharField( max_length=100, verbose_name='Что понравилось / не понравилось')), ('message', models.CharField(max_length=1000, verbose_name='Сообщение')), ('created', models.DateTimeField(auto_now_add=True, verbose_name='Дата добавления')), ('star', models.CharField(choices=[('1', 'Очень плохо'), ('2', 'Плохо'), ('3', 'Нормально'), ('4', 'Хорошо'), ('5', 'Отлично')], max_length=50, verbose_name='Рейтинг')), ('receiver', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='guest_receiver', to=settings.AUTH_USER_MODEL, verbose_name='Кому написал')), ('sender', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='guest_sender', to=settings.AUTH_USER_MODEL, verbose_name='Кто написал')), ], options={ 'verbose_name_plural': 'Отзывы на пользователя', 'verbose_name': 'Отзыв на пользователя', }, ), migrations.CreateModel( name='UserProfile', fields=[ ('id', models.BigIntegerField(primary_key=True, serialize=False)), ('bio', models.TextField(blank=True, max_length=1000, verbose_name='Биография')), ('сity', models.CharField(blank=True, max_length=100, verbose_name='Город')), ('status', models.CharField(blank=True, max_length=100, verbose_name='статус-слоган')), ('vk_url', models.URLField(blank=True, verbose_name='Ссылка на vk')), ('youtube_url', models.URLField(blank=True, verbose_name='Ссылка на youtube')), ('facebook_url', models.URLField(blank=True, verbose_name='Ссылка на facebook')), ('instagram_url', models.URLField(blank=True, verbose_name='Ссылка на instagram')), ('twitter_url', models.URLField(blank=True, verbose_name='Ссылка на twitter')), ('avatar', imagekit.models.fields.ProcessedImageField( upload_to=users.helpers.upload_to_user_directory)), ('user', models.OneToOneField( on_delete=django.db.models.deletion.CASCADE, related_name='profile', to=settings.AUTH_USER_MODEL, verbose_name='Пользователь')), ], options={ 'index_together': {('id', 'user')}, 'verbose_name_plural': 'Профили пользователей', 'verbose_name': 'Профиль пользователя', }, ), migrations.AddIndex( model_name='userblock', index=models.Index(fields=['blocked_user', 'blocker'], name='users_userb_blocked_ab1a4e_idx'), ), migrations.AlterUniqueTogether( name='userblock', unique_together={('blocked_user', 'blocker')}, ), migrations.AlterIndexTogether( name='twouserlocation', index_together={('id', 'user')}, ), migrations.AlterIndexTogether( name='threeuserlocation', index_together={('id', 'user')}, ), migrations.AddIndex( model_name='subscribe', index=django.contrib.postgres.indexes.BrinIndex( fields=['created'], name='users_subsc_created_638c8c_brin'), ), migrations.AlterUniqueTogether( name='subscribe', unique_together={('adding_user', 'added_user')}, ), migrations.AlterIndexTogether( name='oneuserlocation', index_together={('id', 'user')}, ), migrations.AlterIndexTogether( name='ipuser', index_together={('id', 'user')}, ), migrations.AddIndex( model_name='guest', index=django.contrib.postgres.indexes.BrinIndex( fields=['created'], name='users_guest_created_8f1de0_brin'), ), ]
class Migration(migrations.Migration): initial = True dependencies = [ ('auth', '0012_alter_user_first_name_max_length'), ] operations = [ migrations.CreateModel( name='User', fields=[ ('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')), ('username', models.CharField( error_messages={ 'unique': 'A user with that username already exists.' }, help_text= 'Required. 150 characters or fewer. Letters, digits and @/./+/-/_ only.', max_length=150, unique=True, validators=[ django.contrib.auth.validators. UnicodeUsernameValidator() ], verbose_name='username')), ('first_name', models.CharField(blank=True, max_length=150, 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')), ('id', models.BigAutoField(primary_key=True, serialize=False)), ('usertype', models.PositiveIntegerField()), ('realname', models.CharField(db_index=True, max_length=30)), ('studentno', models.CharField(blank=True, db_index=True, max_length=50, null=True)), ('desc', models.CharField(blank=True, max_length=500, null=True)), ('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': 'user', 'verbose_name_plural': 'users', 'abstract': False, }, managers=[ ('objects', django.contrib.auth.models.UserManager()), ], ), migrations.CreateModel( name='Workflow', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('title', models.CharField(max_length=100)), ('currentstate', models.CharField(max_length=20)), ('createdate', models.DateTimeField(default=datetime.datetime.now)), ('user', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)), ], ), migrations.CreateModel( name='Workstep', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('actiondate', models.DateTimeField(default=datetime.datetime.now)), ('actionname', models.CharField(max_length=200)), ('nextstate', models.CharField(max_length=200)), ('name', models.CharField(default='备注', max_length=20)), ('type', models.CharField(max_length=20)), ('value', models.CharField(max_length=2000)), ('operator', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)), ('workflow', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='api.workflow')), ], ), migrations.CreateModel( name='Students', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('sid', models.PositiveIntegerField(unique=True)), ('Tea', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)), ], ), migrations.CreateModel( name='Paper', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('pubdate', models.DateTimeField(default=datetime.datetime.now)), ('title', models.CharField(max_length=100)), ('content', models.CharField(max_length=2000)), ('thumbupcount', models.PositiveIntegerField(default=0)), ('status', models.PositiveIntegerField(default=1)), ('user', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)), ], ), migrations.CreateModel( name='Notification', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('pubdate', models.DateTimeField(default=datetime.datetime.now)), ('title', models.CharField(max_length=100)), ('content', models.CharField(max_length=2000)), ('status', models.PositiveIntegerField(default=1)), ('user', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)), ], ), migrations.CreateModel( name='News', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('pubdate', models.DateTimeField(default=datetime.datetime.now)), ('title', models.CharField(max_length=100)), ('content', models.CharField(max_length=2000)), ('status', models.PositiveIntegerField(default=1)), ('user', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)), ], ), migrations.CreateModel( name='Likes', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('paper', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='api.paper')), ('user', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)), ], ), migrations.AddIndex( model_name='students', index=models.Index(fields=['sid'], name='api_student_sid_feeb7e_idx'), ), ]
class Migration(migrations.Migration): initial = True dependencies = [ ('auth', '0012_alter_user_first_name_max_length'), ] operations = [ migrations.CreateModel( name='User', fields=[ ('id', models.UUIDField(default=uuid.uuid4, editable=False, primary_key=True, serialize=False)), ('first_name', models.CharField(max_length=16)), ('last_name', models.CharField(max_length=16)), ('email', models.EmailField(max_length=32, unique=True)), ('username', models.CharField(max_length=16, unique=True, validators=[ django.core.validators.RegexValidator( '^[a-zA-Z0-9_]*$') ])), ('password', models.CharField(max_length=128)), ('birthdate', models.DateField(blank=True, null=True)), ('daily_progress', models.FloatField( default=0, validators=[ core.validators.BothIncludedRangeValidator(0, 100) ])), ('is_active', models.BooleanField(default=True)), ('is_staff', models.BooleanField(default=False)), ('is_superuser', models.BooleanField(default=False)), ('timezone', models.CharField(blank=True, max_length=32, null=True)), ('image', models.ImageField(blank=True, null=True, upload_to='profile_images')), ('last_login', models.DateTimeField(blank=True, null=True)), ('date_joined', models.DateTimeField(auto_now_add=True)), ('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={ 'ordering': ('username', ), }, managers=[ ('objects', django.contrib.auth.models.UserManager()), ], ), migrations.AddIndex( model_name='user', index=models.Index(fields=['username'], name='accounts_us_usernam_c0ea66_idx'), ), migrations.AddIndex( model_name='user', index=models.Index(fields=['email'], name='accounts_us_email_74c8d6_idx'), ), migrations.AddConstraint( model_name='user', constraint=models.CheckConstraint(check=models.Q( ('daily_progress__gte', 0), ('daily_progress__lte', 100)), name='valid_daily_progress'), ), ]
class Migration(migrations.Migration): initial = True dependencies = [ ('auth', '0011_update_proxy_permissions'), ] operations = [ migrations.CreateModel( name='User', 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')), ('username', models.CharField( error_messages={ 'unique': 'A user with that username already exists.' }, help_text= 'Required. 150 characters or fewer. Letters, digits and @/./+/-/_ only.', max_length=150, unique=True, validators=[ django.contrib.auth.validators. UnicodeUsernameValidator() ], verbose_name='username')), ('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')), ('type_id', models.IntegerField(choices=[(1, 'CEDULA'), (2, 'CEDULA_EXTRANJERIA'), (3, 'TARJETA_IDENTIDAD')], default=1, verbose_name='Tipo de ID')), ('personal_id', models.CharField(max_length=24, verbose_name='Numero de ID')), ('personal_code', models.CharField(max_length=24, verbose_name='Codigo ID')), ('gender', models.CharField(max_length=30)), ('telephone', models.CharField(max_length=24, verbose_name='Telefono')), ('address', models.CharField(max_length=64, verbose_name='Direccion')), ('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')), ], managers=[ ('objects', django.contrib.auth.models.UserManager()), ], ), migrations.CreateModel( name='Applicant', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('user', models.ForeignKey(null=True, on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)), ], options={ 'verbose_name': 'applicant', 'verbose_name_plural': 'applicants', }, ), migrations.CreateModel( name='Category', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('name', models.CharField(max_length=30)), ], options={ 'verbose_name': 'Category', 'verbose_name_plural': 'Categories', }, ), migrations.CreateModel( name='Lender', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('user', models.ForeignKey(null=True, on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)), ], options={ 'verbose_name': 'lender', 'verbose_name_plural': 'lenders', }, ), migrations.CreateModel( name='Offer', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('title', models.CharField(max_length=30)), ('description', models.CharField(max_length=30)), ('price', models.CharField(max_length=30)), ('address', models.CharField(max_length=30)), ('status', models.CharField(max_length=30)), ('date_start', models.DateField()), ('date_end', models.DateField()), ('applicant', models.ForeignKey(null=True, on_delete=django.db.models.deletion.CASCADE, to='api.Applicant')), ('lender', models.ForeignKey(null=True, on_delete=django.db.models.deletion.CASCADE, to='api.Lender')), ], options={ 'verbose_name': 'offer', 'verbose_name_plural': 'offers', }, ), migrations.CreateModel( name='Qualification', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('score_ap_to_le', models.CharField(max_length=30)), ('comment_ap_to_le', models.CharField(max_length=30)), ('score_le_to_ap', models.CharField(max_length=30)), ('comment_le_to_ap', models.CharField(max_length=30)), ], options={ 'verbose_name': 'qualification', 'verbose_name_plural': 'qualifications', }, ), migrations.CreateModel( name='Skill', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('name', models.CharField(max_length=30)), ('category', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='api.Category')), ], options={ 'verbose_name': 'skill', 'verbose_name_plural': 'skills', }, ), migrations.CreateModel( name='Postulation', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('lender', models.ForeignKey(null=True, on_delete=django.db.models.deletion.CASCADE, to='api.Lender')), ('offer', models.ForeignKey(null=True, on_delete=django.db.models.deletion.CASCADE, to='api.Offer')), ], options={ 'verbose_name': 'postulation', 'verbose_name_plural': 'postulations', }, ), migrations.AddField( model_name='offer', name='skill', field=models.ForeignKey( on_delete=django.db.models.deletion.CASCADE, to='api.Skill'), ), migrations.CreateModel( name='Has', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('lender', models.ForeignKey(null=True, on_delete=django.db.models.deletion.CASCADE, to='api.Lender')), ('skill', models.ForeignKey(null=True, on_delete=django.db.models.deletion.CASCADE, to='api.Skill')), ], options={ 'verbose_name': 'has', 'verbose_name_plural': 'has', }, ), migrations.AddIndex( model_name='user', index=models.Index(fields=['personal_id', 'personal_code'], name='api_user_persona_76fce1_idx'), ), ]
class Migration(migrations.Migration): initial = True dependencies = [ ('auth', '0009_alter_user_last_name_max_length'), ] operations = [ migrations.CreateModel( name='MyUser', 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')), ('username', models.CharField(error_messages={'unique': 'A user with that username already exists.'}, help_text='Required. 150 characters or fewer. Letters, digits and @/./+/-/_ only.', max_length=150, unique=True, validators=[django.contrib.auth.validators.UnicodeUsernameValidator()], verbose_name='username')), ('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')), ('full_name', models.CharField(max_length=100)), ('is_client', models.BooleanField(default=False)), ('is_manager', models.BooleanField(default=False)), ('group_type', models.CharField(choices=[('NA', 'None'), ('FT', 'Field Team'), ('PD', 'Project Developer'), ('PF', 'Performance FollowUp')], default='NA', max_length=30)), ], options={ 'verbose_name': 'user', 'verbose_name_plural': 'users', 'abstract': False, }, managers=[ ('objects', django.contrib.auth.models.UserManager()), ], ), migrations.CreateModel( name='Cluster', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('name', models.CharField(max_length=100, unique=True)), ], ), migrations.CreateModel( name='DataSetPG', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('tower_code', models.CharField(max_length=20)), ('time_stamp', models.DateTimeField(blank=True, default=datetime.datetime.now, null=True)), ('value', models.CharField(max_length=200)), ], ), migrations.CreateModel( name='Equipment', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('sn', models.CharField(max_length=100, unique=True)), ('manufacturer', models.CharField(blank=True, max_length=100, null=True)), ('model', models.CharField(blank=True, max_length=50, null=True)), ('version', models.CharField(blank=True, max_length=10, null=True)), ('designation', models.CharField(blank=True, max_length=100, null=True)), ('status', models.BooleanField(default=True)), ], ), migrations.CreateModel( name='EquipmentType', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('name', models.CharField(max_length=100, unique=True)), ], ), migrations.CreateModel( name='Tower', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('code', models.CharField(max_length=20, unique=True)), ('name', models.CharField(max_length=30)), ], options={ 'ordering': ['code'], }, ), migrations.AddField( model_name='equipment', name='type', field=models.ForeignKey(on_delete=0, to='main_app.EquipmentType'), ), migrations.AddIndex( model_name='datasetpg', index=models.Index(fields=['tower_code', 'time_stamp'], name='main_app_da_tower_c_6a0ada_idx'), ), migrations.AddIndex( model_name='datasetpg', index=models.Index(fields=['tower_code'], name='main_app_da_tower_c_56bc0f_idx'), ), migrations.AddIndex( model_name='datasetpg', index=models.Index(fields=['time_stamp'], name='main_app_da_time_st_e0ed7c_idx'), ), migrations.AddField( model_name='cluster', name='towers', field=models.ManyToManyField(blank=True, to='main_app.Tower', verbose_name='list of towers'), ), migrations.AddField( model_name='myuser', name='groups', field=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'), ), migrations.AddField( model_name='myuser', name='towers', field=models.ManyToManyField(blank=True, to='main_app.Tower', verbose_name='list of towers'), ), migrations.AddField( model_name='myuser', name='user_permissions', field=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'), ), ]
class Migration(migrations.Migration): initial = True dependencies = [ ('auth', '0011_update_proxy_permissions'), ] operations = [ migrations.CreateModel( name='User', 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')), ('username', models.CharField( error_messages={ 'unique': 'A user with that username already exists.' }, help_text= 'Required. 150 characters or fewer. Letters, digits and @/./+/-/_ only.', max_length=150, unique=True, validators=[ django.contrib.auth.validators. UnicodeUsernameValidator() ], verbose_name='username')), ('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')), ('moodle_id', models.IntegerField(blank=True, null=True)), ], options={ 'verbose_name': 'user', 'verbose_name_plural': 'users', 'abstract': False, }, managers=[ ('objects', django.contrib.auth.models.UserManager()), ], ), migrations.CreateModel( name='Assignment', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('name', models.CharField(editable=False, max_length=256)), ('external_id', models.IntegerField()), ], options={ 'abstract': False, }, ), migrations.CreateModel( name='Choice', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('name', models.CharField(editable=False, max_length=256)), ('external_id', models.IntegerField()), ], options={ 'abstract': False, }, ), migrations.CreateModel( name='Content', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('name', models.CharField(help_text='What is this content called?', max_length=256)), ('type', models.CharField(choices=[('book', 'Book'), ('chapter', 'Chapter'), ('lesson', 'Lesson'), ('url', 'Website'), ('resource', 'File'), ('folder', 'Folder'), ('page', 'Page'), ('wiki', 'Wiki')], help_text='What kind of content is this?', max_length=256)), ('target', models.CharField( help_text='Where can student find the content?', max_length=256)), ('external', models.BooleanField(default=True)), ('external_id', models.IntegerField(blank=True, null=True)), ], ), migrations.CreateModel( name='Course', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('name', models.CharField(editable=False, help_text='The course name.', max_length=50)), ('platform', models.CharField(choices=[('Moodle', 'Moodle'), ('Blackboard', 'Blackboard')], default='Moodle', max_length=50)), ('courseId', models.IntegerField( editable=False, help_text='The course ID of the course on the LMS.', unique=True, verbose_name='Course ID')), ('inactivity', models.BooleanField( default=False, help_text= "Sends a message when a user hasn't logged in for a certain time.", verbose_name='Enable inactivity check')), ('deadline', models.BooleanField( default=False, help_text= "Sends a message to students certain time before a deadline when they haven't submitted anything.", verbose_name='Enable deadline check')), ('hours_before', models.IntegerField( default=24, help_text= 'How many hours before the deadline needs the student to be notified?', verbose_name='Hours before early deadline warning')), ], ), migrations.CreateModel( name='Subject', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('name', models.CharField(max_length=256)), ('contents', models.ManyToManyField(blank=True, to='courses.Content')), ('course', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='courses.Course')), ], ), migrations.CreateModel( name='Quiz', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('name', models.CharField(editable=False, max_length=256)), ('external_id', models.IntegerField()), ('contents', models.ManyToManyField(blank=True, to='courses.Content')), ('course', models.ForeignKey(editable=False, on_delete=django.db.models.deletion.CASCADE, to='courses.Course')), ('subjects', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to='courses.Subject')), ], options={ 'verbose_name_plural': 'quizzes', }, ), migrations.CreateModel( name='Question', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('name', models.CharField(editable=False, max_length=256)), ('external_id', models.IntegerField()), ('contents', models.ManyToManyField(blank=True, to='courses.Content')), ('course', models.ForeignKey(editable=False, on_delete=django.db.models.deletion.CASCADE, to='courses.Course')), ('quiz', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='courses.Quiz')), ('subjects', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to='courses.Subject')), ], options={ 'abstract': False, }, ), migrations.AddIndex( model_name='course', index=models.Index(fields=['courseId'], name='courses_cou_courseI_87a520_idx'), ), migrations.AddField( model_name='content', name='course', field=models.ForeignKey( on_delete=django.db.models.deletion.CASCADE, to='courses.Course'), ), migrations.AddField( model_name='choice', name='contents', field=models.ManyToManyField(blank=True, to='courses.Content'), ), migrations.AddField( model_name='choice', name='course', field=models.ForeignKey( editable=False, on_delete=django.db.models.deletion.CASCADE, to='courses.Course'), ), migrations.AddField( model_name='choice', name='subjects', field=models.ForeignKey( blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to='courses.Subject'), ), migrations.AddField( model_name='assignment', name='contents', field=models.ManyToManyField(blank=True, to='courses.Content'), ), migrations.AddField( model_name='assignment', name='course', field=models.ForeignKey( editable=False, on_delete=django.db.models.deletion.CASCADE, to='courses.Course'), ), migrations.AddField( model_name='assignment', name='subjects', field=models.ForeignKey( blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to='courses.Subject'), ), migrations.AddField( model_name='user', name='courses', field=models.ManyToManyField(to='courses.Course'), ), migrations.AddField( model_name='user', name='groups', field=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'), ), migrations.AddField( model_name='user', name='user_permissions', field=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'), ), migrations.AddIndex( model_name='question', index=models.Index(fields=['external_id'], name='courses_que_externa_252e2d_idx'), ), migrations.AlterUniqueTogether( name='question', unique_together={('course', 'external_id')}, ), migrations.AddIndex( model_name='content', index=models.Index(fields=['target'], name='courses_con_target_65e715_idx'), ), migrations.AlterUniqueTogether( name='content', unique_together={('course', 'target')}, ), migrations.AddIndex( model_name='choice', index=models.Index(fields=['external_id'], name='courses_cho_externa_155387_idx'), ), migrations.AlterUniqueTogether( name='choice', unique_together={('course', 'external_id')}, ), migrations.AddIndex( model_name='assignment', index=models.Index(fields=['external_id'], name='courses_ass_externa_16a026_idx'), ), migrations.AlterUniqueTogether( name='assignment', unique_together={('course', 'external_id')}, ), ]
class Migration(migrations.Migration): initial = True dependencies = [ ('auth', '0012_alter_user_first_name_max_length'), ] operations = [ migrations.CreateModel( name='Imenica', fields=[ ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('nomjed', models.CharField(max_length=50, verbose_name='номинатив једнине')), ('genjed', models.CharField(blank=True, max_length=50, null=True, verbose_name='генитив једнине')), ('datjed', models.CharField(blank=True, max_length=50, null=True, verbose_name='датив једнине')), ('akujed', models.CharField(blank=True, max_length=50, null=True, verbose_name='акузатив једнине')), ('vokjed', models.CharField(blank=True, max_length=50, null=True, verbose_name='вокатив једнине')), ('insjed', models.CharField(blank=True, max_length=50, null=True, verbose_name='инструментал једнине')), ('lokjed', models.CharField(blank=True, max_length=50, null=True, verbose_name='локатив једнине')), ('nommno', models.CharField(blank=True, max_length=50, null=True, verbose_name='номинатив множине')), ('genmno', models.CharField(blank=True, max_length=50, null=True, verbose_name='генитив множине')), ('datmno', models.CharField(blank=True, max_length=50, null=True, verbose_name='датив множине')), ('akumno', models.CharField(blank=True, max_length=50, null=True, verbose_name='акузатив множине')), ('vokmno', models.CharField(blank=True, max_length=50, null=True, verbose_name='вокатив множине')), ('insmno', models.CharField(blank=True, max_length=50, null=True, verbose_name='инструментал множине')), ('lokmno', models.CharField(blank=True, max_length=50, null=True, verbose_name='локатив множине')), ('vrsta', models.IntegerField(choices=[(1, 'апстрактна'), (2, 'заједничка'), (3, 'властита'), (4, 'збирна'), (5, 'градивна'), (6, 'глаголска')], null=True, verbose_name='врста именице')), ('recnik_id', models.IntegerField(null=True, verbose_name='ID одреднице у речнику')), ('vreme_kreiranja', models.DateTimeField(default=django.utils.timezone.now, verbose_name='време креирања')), ('poslednja_izmena', models.DateTimeField(default=django.utils.timezone.now, verbose_name='време последње измене')), ], options={ 'verbose_name': 'именица', 'verbose_name_plural': 'именице', 'ordering': ['id'], }, ), migrations.CreateModel( name='OperacijaIzmene', fields=[ ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('naziv', models.CharField(max_length=50, verbose_name='назив')), ], options={ 'verbose_name': 'операција измене', 'verbose_name_plural': 'операције измена', }, ), migrations.CreateModel( name='StatusReci', fields=[ ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('naziv', models.CharField(max_length=50, verbose_name='назив')), ], options={ 'verbose_name': 'статус речи', 'verbose_name_plural': 'статуси речи', 'ordering': ['id'], }, ), migrations.CreateModel( name='VarijantaImenice', fields=[ ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('redni_broj', models.PositiveSmallIntegerField(verbose_name='редни број')), ('nomjed', models.CharField(blank=True, max_length=50, null=True, verbose_name='номинатив једнине')), ('genjed', models.CharField(blank=True, max_length=50, null=True, verbose_name='генитив једнине')), ('datjed', models.CharField(blank=True, max_length=50, null=True, verbose_name='датив једнине')), ('akujed', models.CharField(blank=True, max_length=50, null=True, verbose_name='акузатив једнине')), ('vokjed', models.CharField(blank=True, max_length=50, null=True, verbose_name='вокатив једнине')), ('insjed', models.CharField(blank=True, max_length=50, null=True, verbose_name='инструментал једнине')), ('lokjed', models.CharField(blank=True, max_length=50, null=True, verbose_name='локатив једнине')), ('nommno', models.CharField(blank=True, max_length=50, null=True, verbose_name='номинатив множине')), ('genmno', models.CharField(blank=True, max_length=50, null=True, verbose_name='генитив множине')), ('datmno', models.CharField(blank=True, max_length=50, null=True, verbose_name='датив множине')), ('akumno', models.CharField(blank=True, max_length=50, null=True, verbose_name='акузатив множине')), ('vokmno', models.CharField(blank=True, max_length=50, null=True, verbose_name='вокатив множине')), ('insmno', models.CharField(blank=True, max_length=50, null=True, verbose_name='инструментал множине')), ('lokmno', models.CharField(blank=True, max_length=50, null=True, verbose_name='локатив множине')), ], ), migrations.CreateModel( name='UserProxy', fields=[ ], options={ 'proxy': True, 'indexes': [], 'constraints': [], }, bases=('auth.user',), managers=[ ('objects', django.contrib.auth.models.UserManager()), ], ), migrations.CreateModel( name='IzmenaImenice', fields=[ ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('vreme', models.DateTimeField(default=django.utils.timezone.now, verbose_name='време')), ('imenica', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='reci.imenica', verbose_name='именица')), ('operacija_izmene', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='reci.operacijaizmene', verbose_name='операција измене')), ('user', models.ForeignKey(on_delete=django.db.models.deletion.DO_NOTHING, to='reci.userproxy', verbose_name='корисник')), ], options={ 'verbose_name': 'измена именице', 'verbose_name_plural': 'измене именица', }, ), migrations.AddField( model_name='imenica', name='status', field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, to='reci.statusreci', verbose_name='статус речи'), ), migrations.AddIndex( model_name='imenica', index=models.Index(fields=['vrsta'], name='reci_imenic_vrsta_db774b_idx'), ), migrations.AddIndex( model_name='imenica', index=models.Index(fields=['nomjed'], name='reci_imenic_nomjed_e6a020_idx'), ), ]
class Migration(migrations.Migration): initial = True dependencies = [ ("auth", "0011_update_proxy_permissions"), ] operations = [ migrations.CreateModel( name="User", 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", ), ), ( "username", models.CharField( error_messages={ "unique": "A user with that username already exists." }, help_text= "Required. 150 characters or fewer. Letters, digits and @/./+/-/_ only.", max_length=150, unique=True, validators=[ django.contrib.auth.validators. UnicodeUsernameValidator() ], verbose_name="username", ), ), ( "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"), ), ], options={ "verbose_name": "user", "verbose_name_plural": "users", "db_table": "db_user", "abstract": False, "swappable": "AUTH_USER_MODEL", }, managers=[ ("objects", django.contrib.auth.models.UserManager()), ], ), migrations.CreateModel( name="Artifact", fields=[ ( "id", models.AutoField( auto_created=True, primary_key=True, serialize=False, verbose_name="ID", ), ), ("created_at", models.DateTimeField(auto_now_add=True, db_index=True)), ("updated_at", models.DateTimeField(auto_now=True)), ("state", models.UUIDField()), ("name", models.CharField(db_index=True, max_length=64)), ( "kind", models.CharField( choices=[ ("model", "model"), ("audio", "audio"), ("video", "video"), ("histogram", "histogram"), ("image", "image"), ("tensor", "tensor"), ("dataframe", "dataframe"), ("chart", "chart"), ("csv", "csv"), ("tsv", "tsv"), ("psv", "psv"), ("ssv", "ssv"), ("metric", "metric"), ("env", "env"), ("html", "html"), ("text", "text"), ("file", "file"), ("dir", "dir"), ("tensorboard", "tensorboard"), ("dockerfile", "dockerfile"), ("docker_image", "docker_image"), ("data", "data"), ("coderef", "coderef"), ("table", "table"), ("curve", "curve"), ("analysis", "analysis"), ("iteration", "iteration"), ], db_index=True, max_length=12, ), ), ("path", models.CharField(blank=True, max_length=256, null=True)), ("summary", django.contrib.postgres.fields.jsonb.JSONField()), ], options={ "db_table": "db_artifact", }, ), migrations.CreateModel( name="ArtifactLineage", fields=[ ( "id", models.AutoField( auto_created=True, primary_key=True, serialize=False, verbose_name="ID", ), ), ("created_at", models.DateTimeField(auto_now_add=True, db_index=True)), ("updated_at", models.DateTimeField(auto_now=True)), ("is_input", models.NullBooleanField(default=False)), ], options={ "db_table": "db_artifactlineage", }, ), migrations.CreateModel( name="Project", fields=[ ( "id", models.AutoField( auto_created=True, primary_key=True, serialize=False, verbose_name="ID", ), ), ("created_at", models.DateTimeField(auto_now_add=True, db_index=True)), ("updated_at", models.DateTimeField(auto_now=True)), ("deleted", models.BooleanField(default=False)), ("description", models.TextField(blank=True, null=True)), ("readme", models.TextField(blank=True, null=True)), ( "tags", django.contrib.postgres.fields.ArrayField( base_field=models.CharField(max_length=64), blank=True, null=True, size=None, ), ), ( "uuid", models.UUIDField(default=uuid.uuid4, editable=False, unique=True), ), ( "name", models.CharField( max_length=150, unique=True, validators=[ django.core.validators.RegexValidator( re.compile("^[-a-zA-Z0-9_]+\\Z"), "Enter a valid “slug” consisting of letters, numbers, underscores or hyphens.", "invalid", ), polycommon.validation.blacklist. validate_blacklist_name, ], ), ), ], options={ "db_table": "db_project", }, ), migrations.CreateModel( name="Run", fields=[ ( "id", models.AutoField( auto_created=True, primary_key=True, serialize=False, verbose_name="ID", ), ), ("created_at", models.DateTimeField(auto_now_add=True, db_index=True)), ("updated_at", models.DateTimeField(auto_now=True)), ("deleted", models.BooleanField(default=False)), ("description", models.TextField(blank=True, null=True)), ( "name", models.CharField( blank=True, default=None, max_length=128, null=True, validators=[ django.core.validators.RegexValidator( re.compile("^[-a-zA-Z0-9_]+\\Z"), "Enter a valid “slug” consisting of letters, numbers, underscores or hyphens.", "invalid", ), polycommon.validation.blacklist. validate_blacklist_name, ], ), ), ("readme", models.TextField(blank=True, null=True)), ( "tags", django.contrib.postgres.fields.ArrayField( base_field=models.CharField(max_length=64), blank=True, null=True, size=None, ), ), ( "uuid", models.UUIDField(default=uuid.uuid4, editable=False, unique=True), ), ( "is_managed", models.BooleanField( default=True, help_text="If this entity is managed by the platform.", ), ), ("started_at", models.DateTimeField(blank=True, null=True)), ("finished_at", models.DateTimeField(blank=True, null=True)), ("run_time", models.IntegerField(blank=True, null=True)), ( "raw_content", models.TextField( blank=True, help_text= "The raw yaml content of the polyaxonfile/specification.", null=True, ), ), ( "content", models.TextField( blank=True, help_text= "The compiled yaml content of the polyaxonfile/specification.", null=True, ), ), ( "status", models.CharField( blank=True, choices=[ ("created", "created"), ("resuming", "resuming"), ("warning", "warning"), ("unschedulable", "unschedulable"), ("compiled", "compiled"), ("queued", "queued"), ("scheduled", "scheduled"), ("starting", "starting"), ("running", "running"), ("initializing", "initializing"), ("processing", "processing"), ("succeeded", "succeeded"), ("failed", "failed"), ("upstream_failed", "upstream_failed"), ("stopping", "stopping"), ("stopped", "stopped"), ("skipped", "skipped"), ("retrying", "retrying"), ("unknown", "unknown"), ], db_index=True, default="created", max_length=64, null=True, ), ), ( "status_conditions", django.contrib.postgres.fields.jsonb.JSONField( blank=True, default=dict, encoder=django.core.serializers.json.DjangoJSONEncoder, null=True, ), ), ( "kind", models.CharField( choices=[ ("job", "job"), ("service", "service"), ("dag", "dag"), ("matrix", "matrix"), ("spark", "spark"), ("dask", "dask"), ("flink", "flink"), ("ray", "ray"), ("mpijob", "mpijob"), ("tfjob", "tfjob"), ("pytorchjob", "pytorchjob"), ("schedule", "schedule"), ("tuner", "tuner"), ("watchdog", "watchdog"), ("notifier", "notifier"), ], db_index=True, max_length=12, ), ), ( "meta_info", django.contrib.postgres.fields.jsonb.JSONField( blank=True, default=dict, null=True), ), ( "params", django.contrib.postgres.fields.jsonb.JSONField(blank=True, null=True), ), ( "inputs", django.contrib.postgres.fields.jsonb.JSONField(blank=True, null=True), ), ( "outputs", django.contrib.postgres.fields.jsonb.JSONField(blank=True, null=True), ), ( "cloning_kind", models.CharField( blank=True, choices=[ ("copy", "copy"), ("restart", "restart"), ("cache", "cache"), ], max_length=12, null=True, ), ), ( "artifacts", models.ManyToManyField( blank=True, related_name="runs", through="coredb.ArtifactLineage", to="coredb.Artifact", ), ), ( "original", models.ForeignKey( blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name="clones", to="coredb.Run", ), ), ( "project", models.ForeignKey( on_delete=django.db.models.deletion.CASCADE, related_name="runs", to="coredb.Project", ), ), ( "user", models.ForeignKey( blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, related_name="+", to=settings.AUTH_USER_MODEL, ), ), ], options={ "db_table": "db_run", }, ), migrations.AddIndex( model_name="project", index=models.Index(fields=["name"], name="db_project_name_4bfc0e_idx"), ), migrations.AddField( model_name="artifactlineage", name="artifact", field=models.ForeignKey( on_delete=django.db.models.deletion.CASCADE, related_name="runs_lineage", to="coredb.Artifact", ), ), migrations.AddField( model_name="artifactlineage", name="run", field=models.ForeignKey( on_delete=django.db.models.deletion.CASCADE, related_name="artifacts_lineage", to="coredb.Run", ), ), migrations.AlterUniqueTogether( name="artifact", unique_together={("name", "state")}, ), migrations.AddField( model_name="user", name="groups", field=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", ), ), migrations.AddField( model_name="user", name="user_permissions", field=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", ), ), migrations.AddIndex( model_name="run", index=models.Index(fields=["name"], name="db_run_name_47fc7c_idx"), ), migrations.AlterUniqueTogether( name="artifactlineage", unique_together={("run", "artifact", "is_input")}, ), ]
class Migration(migrations.Migration): initial = True dependencies = [ ('auth', '0009_alter_user_last_name_max_length'), migrations.swappable_dependency(settings.AUTH_USER_MODEL), ] operations = [ migrations.CreateModel( name='ContactList', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('name', models.CharField(max_length=150)), ('email', models.EmailField(blank=True, max_length=254, null=True)), ('users', models.ManyToManyField(to=settings.AUTH_USER_MODEL)), ], options={ 'verbose_name': 'Kontaktliste', 'verbose_name_plural': 'Kontaktlisten', 'ordering': ['name'], }, ), migrations.CreateModel( name='CustomGroup', fields=[ ('group_ptr', models.OneToOneField( auto_created=True, on_delete=django.db.models.deletion.CASCADE, parent_link=True, primary_key=True, serialize=False, to='auth.Group')), ], options={ 'verbose_name': 'Gruppe', 'verbose_name_plural': 'Gruppen', 'ordering': ['name'], }, bases=('auth.group', ), managers=[ ('objects', django.contrib.auth.models.GroupManager()), ], ), migrations.CreateModel( name='FieldMapping', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('var_name', models.CharField(choices=[ ('om_number', 'OM Nummer'), ('first_name', 'Vorname'), ('last_name', 'Nachname'), ('street', 'Strasse'), ('plz', 'PLZ'), ('city', 'Ort'), ('phone_priv', 'Telefon privat'), ('phone_busi', 'Telefon Geschäftlich'), ('phone_mobi', 'Mobil'), ('country', 'Land'), ('email', 'E-Mail'), ('gender', 'Geschlecht'), ('letter_opening', 'Briefanrede'), ('birthday', 'Geburtstag'), ('position', 'Gruppen'), ('birthday_day', 'Geburtstag Tag'), ('birthday_month', 'Geburtstag Monat'), ('birthday_year', 'Geburtstag Year') ], max_length=100)), ('column_name', models.CharField(max_length=100)), ], ), migrations.CreateModel( name='FormField', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('var_name', models.CharField(max_length=100)), ('input_type', models.CharField(choices=[ ('forms.DateField', 'Datum'), ('forms.TimeField', 'Zeit'), ('forms.CharField', 'Text'), ('forms.ChoiceField', 'Auswahl'), ('forms.MultipleChoiceField', 'Mehrfachauswahl'), ('forms.BooleanField', 'Wahrheitswert'), ('forms.DecimalField', 'Zahl'), ('forms.EmailField', 'E-Mail'), ('forms.URLField', 'URL'), ('forms.FileField', 'Datei') ], max_length=50)), ('label', models.CharField(max_length=100)), ('ordering', models.IntegerField(default=1)), ('required', models.BooleanField(default=True, verbose_name='Benötigt')), ('initial', models.CharField(blank=True, max_length=300, verbose_name='Default')), ('choices', models.TextField(blank=True, help_text='Eine Option pro Zeile', verbose_name='Auswahl')), ('widget', models.CharField( blank=True, choices=[('forms.PasswordInput', 'Passwort-Widget'), ('forms.Textarea', 'Langer Text'), ('forms.SelectInput', 'Select-Widget'), ('forms.Select', 'Select-Widget'), ('forms.SelectMultiple', 'Mehrfach-Select'), ('forms.RadioSelect', 'Select-Radio-Widget'), ('forms.CheckboxSelectMultiple', 'Multipleselect Checkbox')], max_length=100, verbose_name='Widget')), ], options={ 'verbose_name': 'Formularfeld', 'verbose_name_plural': 'Formularfelder', 'ordering': ['ordering', 'var_name'], }, ), migrations.CreateModel( name='FormFieldAnswer', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('value', models.TextField()), ], options={ 'verbose_name': 'Formular-Antwort', 'verbose_name_plural': 'Formular-Antworten', }, ), migrations.CreateModel( name='ImportMapping', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('name', models.CharField(max_length=100)), ], options={ 'verbose_name': 'Verknüpfung', 'verbose_name_plural': 'Verknüpfungen', 'ordering': ['name'], }, ), migrations.CreateModel( name='LetterTemplate', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('name', models.CharField(max_length=100)), ('template', models.FileField(upload_to='templates/', verbose_name='Vorlage (.tex)')), ], options={ 'verbose_name': 'Briefvorlage', 'verbose_name_plural': 'Briefvorlagen', 'ordering': ['name'], }, ), migrations.CreateModel( name='MailGunEvent', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('event', models.CharField(choices=[('accepted', 'accepted'), ('rejected', 'rejected'), ('delivered', 'delivered'), ('failed', 'failed'), ('opened', 'opened'), ('clicked', 'clicked'), ('unsubscribed', 'unsubscribed'), ('complained', 'complained'), ('stored', 'stored')], max_length=30)), ('country', models.CharField(blank=True, max_length=20)), ('device_type', models.CharField(blank=True, max_length=50)), ('client_type', models.CharField(blank=True, max_length=50)), ('client_os', models.CharField(blank=True, max_length=50)), ('tag', models.CharField(blank=True, max_length=100)), ('timestamp', models.DateTimeField(auto_now_add=True)), ('url', models.URLField(blank=True, null=True)), ], options={ 'verbose_name': 'Tracking-Event', 'verbose_name_plural': 'Tracking-Events', 'ordering': ['-timestamp'], }, ), migrations.CreateModel( name='MailGunMessage', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('created', models.DateTimeField(auto_now_add=True)), ('subject', models.CharField(max_length=200)), ('sender', models.EmailField(max_length=254)), ('content', models.TextField()), ('tag', models.CharField(blank=True, max_length=100, null=True)), ('open_points', models.SmallIntegerField(default=0)), ('click_points', models.SmallIntegerField(default=0)), ('remove_points', models.SmallIntegerField(default=0)), ('group', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='auth.Group')), ], options={ 'verbose_name': 'Tracking-Mail', 'verbose_name_plural': 'Tracking-Mails', 'ordering': ['-created'], }, ), migrations.CreateModel( name='MailGunUser', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('domain', models.CharField(max_length=20)), ('api_key', models.CharField(max_length=100)), ('group', models.OneToOneField( on_delete=django.db.models.deletion.CASCADE, to='auth.Group')), ], options={ 'verbose_name': 'Mailgun-Zugang', 'verbose_name_plural': 'Mailgun-Zugänge', }, ), migrations.CreateModel( name='MailTemplate', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('name', models.CharField(max_length=180)), ('template', models.FileField(upload_to='mail-templates/', verbose_name='Vorlage (.html)')), ], options={ 'verbose_name': 'Mail Vorlage', 'verbose_name_plural': 'Mail Vorlagen', 'ordering': ['name'], }, ), migrations.CreateModel( name='Member', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('om_number', models.CharField(blank=True, max_length=120, verbose_name='OM-Nummer')), ('anrede', models.CharField(blank=True, max_length=30, verbose_name='Anrede')), ('first_name', models.CharField(blank=True, max_length=30, verbose_name='Vorname')), ('last_name', models.CharField(blank=True, max_length=30, verbose_name='Name')), ('street', models.CharField(blank=True, max_length=50, verbose_name='Strasse')), ('plz', models.CharField(blank=True, max_length=10, verbose_name='PLZ')), ('city', models.CharField(blank=True, max_length=80, verbose_name='Ort')), ('country', models.CharField(blank=True, max_length=2, verbose_name='Land')), ('phone_priv', models.CharField(blank=True, max_length=30, verbose_name='Telefon Privat')), ('phone_busi', models.CharField(blank=True, max_length=30, verbose_name='Telefon Geschäftlich')), ('phone_mobi', models.CharField(blank=True, max_length=30, verbose_name='Mobil')), ('email', models.EmailField(blank=True, max_length=254, verbose_name='E-Mail')), ('gender', models.CharField(blank=True, max_length=20, verbose_name='Geschlecht')), ('letter_opening', models.CharField(blank=True, max_length=40, verbose_name='Briefanrede')), ('birthday', models.DateField(blank=True, null=True, verbose_name='Geburtstag')), ('status', models.CharField(choices=[('SY', 'Sympi'), ('ME', 'Mitglied'), ('EL', 'Sonstige')], default='EL', max_length=40, null=True, verbose_name='Status')), ('updated', models.BooleanField(default=True)), ('last_active', models.DateTimeField(default=datetime.datetime( 1970, 1, 1, 0, 0), verbose_name='Letzte Aktivität')), ('activity_points', models.IntegerField(default=0)), ('sent_mails', models.IntegerField(default=0)), ('mail_activity', models.IntegerField(default=0, verbose_name='Mail Aktivität')), ('contact_list', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to='mportal.ContactList')), ('imported_by', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)), ], options={ 'verbose_name': 'Mitglied', 'verbose_name_plural': 'Mitglieder', 'ordering': ['last_name', 'last_name'], }, ), migrations.CreateModel( name='Member2Member', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('relation_name', models.CharField(max_length=100, verbose_name='Relation')), ('created', models.DateTimeField(auto_now_add=True)), ('updated', models.DateTimeField(auto_now=True)), ('member_from', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='from_relation', to='mportal.Member', verbose_name='Relation von')), ('member_to', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='to_relation', to='mportal.Member', verbose_name='Relation zu')), ], options={ 'verbose_name': 'M2M', 'verbose_name_plural': 'M2M', }, ), migrations.CreateModel( name='MemberField', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('var_name', models.CharField(choices=[ ('om_number', 'OM Nummer'), ('first_name', 'Vorname'), ('last_name', 'Nachname'), ('street', 'Strasse'), ('plz', 'PLZ'), ('city', 'Ort'), ('phone_priv', 'Telefon privat'), ('phone_busi', 'Telefon Geschäftlich'), ('phone_mobi', 'Mobil'), ('country', 'Land'), ('email', 'E-Mail'), ('gender', 'Geschlecht'), ('letter_opening', 'Briefanrede'), ('birthday', 'Geburtstag'), ('position', 'Gruppen'), ('birthday_day', 'Geburtstag Tag'), ('birthday_month', 'Geburtstag Monat'), ('birthday_year', 'Geburtstag Year') ], max_length=50)), ('label', models.CharField(max_length=50)), ], ), migrations.CreateModel( name='Membership', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('name', models.CharField(max_length=150, verbose_name='Name')), ('description', models.TextField(blank=True, verbose_name='Beschreibung')), ], options={ 'verbose_name': 'Mitgliedschaft', 'verbose_name_plural': 'Mitgliedschaften', 'ordering': ['name'], }, ), migrations.CreateModel( name='Note', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('subject', models.CharField(max_length=100, verbose_name='Betreff')), ('content', models.TextField(verbose_name='Notiz')), ('created', models.DateTimeField(auto_now_add=True, verbose_name='Erstellt')), ('updated', models.DateTimeField(auto_now=True, verbose_name='Bearbeitet')), ('member', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='mportal.Member')), ], options={ 'verbose_name': 'Notiz', 'verbose_name_plural': 'Notizen', 'ordering': ['-created'], }, ), migrations.CreateModel( name='Occupation', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('name', models.CharField(max_length=150, verbose_name='Name')), ('description', models.TextField(blank=True, verbose_name='Beschreibung')), ], options={ 'verbose_name': 'Beschäftigung', 'verbose_name_plural': 'Beschäftigungen', 'ordering': ['name'], }, ), migrations.CreateModel( name='PortalForm', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('name', models.CharField(max_length=100)), ('slug', models.SlugField(unique=True)), ('description', models.TextField()), ('color', colorfield.fields.ColorField(default='#4CAF50', max_length=18, verbose_name='Hintergrund')), ('email_field_name', models.CharField(default='email', max_length=300)), ('confirmation_text', models.TextField( default= 'Hallo {member.first_name},\nDu hast bei {form.name} teilgenommen. Klicke auf disen Link, um deine Antwort zu bestätigen:\n\n{confirmation_link}\n\nVielen Dank und Freundliche Grüsse\nXXX\n' )), ('contact_name', models.CharField(default='JUSO Schweiz', max_length=100)), ('contact_mail', models.EmailField(default='*****@*****.**', max_length=254)), ('editable', models.BooleanField(default=False, verbose_name='Editierbar')), ('allowed_groups', models.ManyToManyField(to='auth.Group')), ('destination_group', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='form_dest', to='auth.Group')), ('users', models.ManyToManyField(to=settings.AUTH_USER_MODEL)), ], options={ 'verbose_name': 'Formular', 'verbose_name_plural': 'Formulare', 'ordering': ['name'], }, ), migrations.CreateModel( name='PortalFormAnswer', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('confirmation_string', models.CharField(max_length=200)), ('confirmed', models.BooleanField(verbose_name='Bestätigt')), ('member', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='mportal.Member')), ('portal_form', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='mportal.PortalForm')), ], options={ 'verbose_name': 'Formular Antwort', 'verbose_name_plural': 'Formular Antworten', }, ), migrations.CreateModel( name='Skill', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('name', models.CharField(max_length=150, verbose_name='Name')), ('description', models.TextField(blank=True, verbose_name='Beschreibung')), ], options={ 'verbose_name': 'Fähigkeit', 'verbose_name_plural': 'Fähigkeiten', 'ordering': ['name'], }, ), migrations.CreateModel( name='SMS', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('content', models.TextField(verbose_name='Inhalt')), ('incoming', models.BooleanField(verbose_name='Eingehend')), ('time', models.DateTimeField(auto_now_add=True)), ('is_mass', models.BooleanField(default=True)), ('location_string', models.CharField(blank=True, max_length=300)), ('twilio_sid', models.CharField(blank=True, max_length=100)), ('delivered', models.BooleanField(default=True)), ('member', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='mportal.Member')), ], options={ 'verbose_name': 'SMS', 'verbose_name_plural': 'SMS', 'ordering': ['-time'], }, ), migrations.CreateModel( name='SMSSender', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('number', models.CharField(max_length=20)), ('username', models.CharField(max_length=100)), ('sid', models.CharField(max_length=40)), ('auth', models.CharField(max_length=40)), ('group', models.OneToOneField( on_delete=django.db.models.deletion.CASCADE, to='auth.Group')), ], options={ 'verbose_name': 'Twilio-Zugang', 'verbose_name_plural': 'Twilio-Zugänge', }, ), migrations.CreateModel( name='TemplateField', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('var_name', models.CharField(max_length=100)), ('input_type', models.CharField(choices=[ ('forms.DateField', 'Datum'), ('forms.TimeField', 'Zeit'), ('forms.CharField', 'Text'), ('forms.BooleanField', 'Wahrheitswert'), ('forms.DecimalField', 'Zahl'), ('forms.EmailField', 'E-Mail'), ('forms.URLField', 'URL'), ('forms.FileField', 'Datei') ], max_length=20)), ('label', models.CharField(max_length=100)), ('argument_string', models.CharField(blank=True, max_length=200)), ('ordering', models.IntegerField(default=1)), ('template', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='fields', to='mportal.LetterTemplate')), ], options={ 'verbose_name': 'Brieffeld', 'verbose_name_plural': 'Brieffelder', 'ordering': ['ordering', 'var_name'], }, ), migrations.AddField( model_name='sms', name='twilio_account', field=models.ForeignKey( on_delete=django.db.models.deletion.CASCADE, to='mportal.SMSSender'), ), migrations.AddField( model_name='memberfield', name='form', field=models.ForeignKey( on_delete=django.db.models.deletion.CASCADE, to='mportal.PortalForm'), ), migrations.AddField( model_name='member', name='memberships', field=models.ManyToManyField(blank=True, to='mportal.Membership', verbose_name='Mitgliedschaften'), ), migrations.AddField( model_name='member', name='occupations', field=models.ManyToManyField(blank=True, to='mportal.Occupation', verbose_name='Veranstaltungen'), ), migrations.AddField( model_name='member', name='position', field=models.ManyToManyField(blank=True, to='auth.Group', verbose_name='Gruppen'), ), migrations.AddField( model_name='member', name='read_mails', field=models.ManyToManyField(blank=True, to='mportal.MailGunMessage'), ), migrations.AddField( model_name='member', name='related_to', field=models.ManyToManyField(through='mportal.Member2Member', to='mportal.Member', verbose_name='Beziehung'), ), migrations.AddField( model_name='member', name='skills', field=models.ManyToManyField(blank=True, to='mportal.Skill', verbose_name='Fähigkeiten'), ), migrations.AddField( model_name='mailgunmessage', name='recipients', field=models.ManyToManyField(to='mportal.Member'), ), migrations.AddField( model_name='mailgunevent', name='message', field=models.ForeignKey( on_delete=django.db.models.deletion.CASCADE, to='mportal.MailGunMessage'), ), migrations.AddField( model_name='mailgunevent', name='recipient', field=models.ForeignKey( on_delete=django.db.models.deletion.CASCADE, to='mportal.Member'), ), migrations.AddField( model_name='formfieldanswer', name='answer', field=models.ForeignKey( on_delete=django.db.models.deletion.CASCADE, related_name='answers', to='mportal.PortalFormAnswer'), ), migrations.AddField( model_name='formfieldanswer', name='form_field', field=models.ForeignKey( on_delete=django.db.models.deletion.CASCADE, to='mportal.FormField'), ), migrations.AddField( model_name='formfield', name='form', field=models.ForeignKey( on_delete=django.db.models.deletion.CASCADE, related_name='fields', to='mportal.PortalForm'), ), migrations.AddField( model_name='fieldmapping', name='mapping', field=models.ForeignKey( on_delete=django.db.models.deletion.CASCADE, related_name='fields', to='mportal.ImportMapping'), ), migrations.AddIndex( model_name='member', index=models.Index(fields=['om_number', 'contact_list'], name='mportal_mem_om_numb_802a29_idx'), ), ]
class Migration(migrations.Migration): initial = True dependencies = [ ('auth', '0009_alter_user_last_name_max_length'), ] operations = [ migrations.CreateModel( name='User', 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')), ('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(max_length=255, unique=True)), ('email', models.EmailField(max_length=254, unique=True)), ('display_name', models.CharField(default='', max_length=255)), ('locked', models.BooleanField(default=False)), ('created_at', models.DateTimeField(default=django.utils.timezone.now, editable=False)), ('note', models.CharField(default='', max_length=255)), ('url', models.URLField(default='', max_length=255)), ('moved_to', models.CharField(default='', max_length=255)), ('avatar', models.CharField( default='/static/un_chapeau/defaults/avatar_1.jpg', max_length=255)), ('header', models.CharField( default='/static/un_chapeau/defaults/avatar_1.jpg', max_length=255)), ('default_sensitive', models.BooleanField(default=False)), ('default_visibility', models.CharField(choices=[('X', 'private'), ('U', 'unlisted'), ('P', 'public'), ('D', 'direct')], default='P', max_length=1)), ('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={ 'abstract': False, 'verbose_name': 'user', 'verbose_name_plural': 'users', }, managers=[ ('objects', django.contrib.auth.models.UserManager()), ], ), migrations.CreateModel( name='Relationship', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('what', models.CharField(choices=[('F', 'is following'), ('B', 'is blocked by'), ('R', 'has requested access to')], max_length=1)), ('them', models.ForeignKey( on_delete=django.db.models.deletion.DO_NOTHING, related_name='passive', to=settings.AUTH_USER_MODEL)), ('us', models.ForeignKey( on_delete=django.db.models.deletion.DO_NOTHING, related_name='active', to=settings.AUTH_USER_MODEL)), ], ), migrations.CreateModel( name='Status', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('content', models.TextField()), ('created_at', models.DateTimeField(default=django.utils.timezone.now, editable=False)), ('sensitive', models.BooleanField(default=None)), ('spoiler_text', models.CharField(default='', max_length=255)), ('visibility', models.CharField(choices=[('X', 'private'), ('U', 'unlisted'), ('P', 'public'), ('D', 'direct')], default=None, max_length=1)), ('idempotency_key', models.CharField(default='', max_length=255)), ('in_reply_to_id', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, to='trilby_api.Status')), ('posted_by', models.ForeignKey(default=1, on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)), ], options={ 'verbose_name_plural': 'statuses', }, ), migrations.AddIndex( model_name='relationship', index=models.Index(fields=['us', 'them'], name='trilby_api__us_id_10049d_idx'), ), migrations.AlterUniqueTogether( name='relationship', unique_together={('us', 'them')}, ), ]
class Migration(migrations.Migration): initial = True dependencies = [ ('auth', '0012_alter_user_first_name_max_length'), ] operations = [ migrations.CreateModel( name='User', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('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')), ('username', models.CharField(error_messages={'unique': 'A user with that username already exists.'}, help_text='Required. 150 characters or fewer. Letters, digits and @/./+/-/_ only.', max_length=150, unique=True, validators=[django.contrib.auth.validators.UnicodeUsernameValidator()], verbose_name='username')), ('first_name', models.CharField(blank=True, max_length=150, verbose_name='first name')), ('last_name', models.CharField(blank=True, max_length=150, verbose_name='last name')), ('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')), ('phone', models.CharField(max_length=11, unique=True, verbose_name='手机号')), ('email', models.EmailField(max_length=254, null=True, unique=True, verbose_name='邮箱')), ('password', models.CharField(max_length=128, null=True, verbose_name='密码(密文)')), ('wx_unionid', models.CharField(max_length=64, null=True, verbose_name='微信unionid')), ('sex', models.SmallIntegerField(default=0, null=True, verbose_name='用户性别 0:未知 1:男 2:女')), ('nickname', models.CharField(default='', max_length=64, verbose_name='用户昵称')), ('realname', models.CharField(default='', max_length=64, verbose_name='用户真姓名')), ('birthday', models.DateField(null=True, verbose_name='用户生日')), ('head_image_url', models.CharField(max_length=1024, verbose_name='用户头像URL(存完整的)')), ('wx_openid', models.CharField(max_length=64, null=True, verbose_name='微信openid')), ('wx_country', models.CharField(max_length=32, null=True, verbose_name='用户所在国家')), ('wx_province', models.CharField(max_length=32, null=True, verbose_name='用户所在省份')), ('wx_city', models.CharField(max_length=32, null=True, verbose_name='用户所在城市')), ('email_active', models.BooleanField(default=False, 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', }, managers=[ ('objects', django.contrib.auth.models.UserManager()), ], ), migrations.CreateModel( name='UserOpenid', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('create_at', models.DateTimeField(auto_now_add=True, verbose_name='创建时间')), ('update_at', models.DateTimeField(auto_now=True, verbose_name='更新时间')), ('wx_openid', models.CharField(max_length=64, verbose_name='用户在对应公众号的openid')), ('mp_appid', models.CharField(max_length=64, verbose_name='公众号的appid(特殊的,对于利楚服务商支付,格式为lcwx-[shop_id])')), ('user', models.OneToOneField(on_delete=django.db.models.deletion.CASCADE, related_name='useropenid', to=settings.AUTH_USER_MODEL, verbose_name='对应的用户对象')), ], options={ 'verbose_name': '用户openid', 'verbose_name_plural': '用户openid', 'db_table': 'user_openid', }, ), migrations.AddIndex( model_name='user', index=models.Index(fields=['phone'], name='ux_phone'), ), migrations.AddIndex( model_name='user', index=models.Index(fields=['wx_unionid'], name='ux_wx_unionid'), ), ]
class Migration(migrations.Migration): initial = True dependencies = [ ('auth', '0009_alter_user_last_name_max_length'), ] operations = [ migrations.CreateModel( name='User', 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')), ('username', models.CharField( error_messages={ 'unique': 'A user with that username already exists.' }, help_text= 'Required. 150 characters or fewer. Letters, digits and @/./+/-/_ only.', max_length=150, unique=True, validators=[ django.contrib.auth.validators. UnicodeUsernameValidator() ], verbose_name='username')), ('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')), ('phone', models.CharField(max_length=255)), ('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': 'user', 'verbose_name_plural': 'users', 'abstract': False, }, managers=[ ('objects', django.contrib.auth.models.UserManager()), ], ), migrations.CreateModel( name='Category', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('name', models.CharField(max_length=255)), ('slug', models.SlugField(blank=True, null=True)), ('created_at', models.DateTimeField(auto_now_add=True)), ('updated_at', models.DateTimeField(auto_now=True)), ], options={ 'verbose_name': 'category', 'verbose_name_plural': 'categories', 'ordering': ('name', ), }, ), migrations.CreateModel( name='Item', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('name', models.CharField(max_length=255)), ('slug', models.SlugField(blank=True, null=True)), ('price', models.DecimalField(decimal_places=2, default=0, max_digits=10)), ('description', models.TextField(blank=True, null=True)), ('rating', models.CharField(blank=True, max_length=5, null=True)), ('available', models.BooleanField(default=True)), ('stock', models.PositiveIntegerField()), ('created_at', models.DateTimeField(auto_now_add=True)), ('updated_at', models.DateTimeField(auto_now=True)), ('category', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='items', to='shop.Category')), ], options={ 'ordering': ('name', ), }, ), migrations.CreateModel( name='ItemImage', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('default', models.BooleanField(default=False)), ('file', models.ImageField(upload_to=shop.models.item_image)), ('alt_tag', models.TextField(max_length=255)), ('item', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='images', to='shop.Item')), ], ), migrations.CreateModel( name='Review', fields=[ ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('date', models.DateTimeField(auto_created=True)), ('rating', models.IntegerField(default=None, null=True)), ('body', models.TextField()), ('item', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='reviews', to='shop.Item')), ('user', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='reviews', to=settings.AUTH_USER_MODEL)), ], options={ 'ordering': ('date', ), }, ), migrations.AddIndex( model_name='item', index=models.Index(fields=['id', 'slug'], name='shop_item_id_a05886_idx'), ), ]