vb
This commit is contained in:
35
backend/shop/migrations/0018_vbcourse_delete_arservice.py
Normal file
35
backend/shop/migrations/0018_vbcourse_delete_arservice.py
Normal file
@@ -0,0 +1,35 @@
|
||||
# Generated by Django 6.0.1 on 2026-02-10 18:48
|
||||
|
||||
from django.db import migrations, models
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
|
||||
dependencies = [
|
||||
('shop', '0017_withdrawal'),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.CreateModel(
|
||||
name='VBCourse',
|
||||
fields=[
|
||||
('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
|
||||
('title', models.CharField(max_length=100, verbose_name='课程名称')),
|
||||
('description', models.TextField(verbose_name='课程简介')),
|
||||
('course_type', models.CharField(choices=[('software', '软件课程'), ('hardware', '硬件课程')], default='software', max_length=20, verbose_name='课程类型')),
|
||||
('duration', models.CharField(default='30分钟', help_text='例如: 30分钟', max_length=50, verbose_name='课程时长')),
|
||||
('lesson_count', models.IntegerField(default=1, verbose_name='课时数量')),
|
||||
('instructor', models.CharField(default='VB讲师', max_length=50, verbose_name='讲师')),
|
||||
('cover_image', models.ImageField(blank=True, null=True, upload_to='courses/covers/', verbose_name='封面图 (上传)')),
|
||||
('cover_image_url', models.URLField(blank=True, null=True, verbose_name='封面图 (URL)')),
|
||||
('created_at', models.DateTimeField(auto_now_add=True, verbose_name='创建时间')),
|
||||
],
|
||||
options={
|
||||
'verbose_name': 'VB课程',
|
||||
'verbose_name_plural': 'VB课程管理',
|
||||
},
|
||||
),
|
||||
migrations.DeleteModel(
|
||||
name='ARService',
|
||||
),
|
||||
]
|
||||
@@ -0,0 +1,28 @@
|
||||
# Generated by Django 6.0.1 on 2026-02-10 18:55
|
||||
|
||||
from django.db import migrations, models
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
|
||||
dependencies = [
|
||||
('shop', '0018_vbcourse_delete_arservice'),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.AddField(
|
||||
model_name='vbcourse',
|
||||
name='detail_image',
|
||||
field=models.ImageField(blank=True, null=True, upload_to='courses/details/', verbose_name='详情页长图 (上传)'),
|
||||
),
|
||||
migrations.AddField(
|
||||
model_name='vbcourse',
|
||||
name='detail_image_url',
|
||||
field=models.URLField(blank=True, help_text='如果填写了URL,将优先使用URL', null=True, verbose_name='详情页长图 (URL)'),
|
||||
),
|
||||
migrations.AddField(
|
||||
model_name='vbcourse',
|
||||
name='tag',
|
||||
field=models.CharField(blank=True, help_text='例如: 热门, 推荐, 进阶', max_length=20, verbose_name='标签'),
|
||||
),
|
||||
]
|
||||
18
backend/shop/migrations/0020_alter_vbcourse_course_type.py
Normal file
18
backend/shop/migrations/0020_alter_vbcourse_course_type.py
Normal file
@@ -0,0 +1,18 @@
|
||||
# Generated by Django 6.0.1 on 2026-02-10 18:58
|
||||
|
||||
from django.db import migrations, models
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
|
||||
dependencies = [
|
||||
('shop', '0019_vbcourse_detail_image_vbcourse_detail_image_url_and_more'),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.AlterField(
|
||||
model_name='vbcourse',
|
||||
name='course_type',
|
||||
field=models.CharField(choices=[('software', '软件课程'), ('hardware', '硬件课程'), ('incubation', '产品商业孵化')], default='software', max_length=20, verbose_name='课程类型'),
|
||||
),
|
||||
]
|
||||
Reference in New Issue
Block a user