Remove year from school class model

This commit is contained in:
Ramon Wenger 2019-07-03 11:57:26 +02:00
parent d8e3d24f4a
commit 0e3ed9ea7a
8 changed files with 27 additions and 13 deletions

View File

@ -2,7 +2,7 @@
<div class="room-group-widget">
<group></group>
<span>
{{name}} - {{year}}
{{name}}
</span>
</div>
</template>
@ -11,7 +11,7 @@
import Group from '@/components/icons/Group.vue';
export default {
props: ['name', 'year'],
props: ['name'],
components: {
Group

View File

@ -1,5 +1,4 @@
fragment SchoolClassParts on SchoolClassNode {
id
name
year
}

View File

@ -15,8 +15,7 @@ class RoleInline(admin.TabularInline):
@admin.register(SchoolClass)
class SchoolClassAdmin(admin.ModelAdmin):
list_display = ('id', 'name', 'year')
list_filter = ('year',)
list_display = ('id', 'name')
@admin.register(Role)

View File

@ -17,7 +17,6 @@ class SchoolClassFactory(factory.django.DjangoModelFactory):
model = SchoolClass
name = factory.Sequence(lambda n: '{}{}{}'.format(random.choice(class_types), '18', class_suffix[n % len(class_suffix)]))
year = factory.LazyAttribute(lambda x: random.choice([2017, 2018, 2019]))
is_deleted = False
@factory.post_generation

View File

@ -5,7 +5,6 @@ from graphene import InputObjectType
class SchoolClassInput(InputObjectType):
id = graphene.ID()
name = graphene.String()
year = graphene.Int()
class PasswordUpdateInput(InputObjectType):

View File

@ -0,0 +1,22 @@
# Generated by Django 2.0.6 on 2019-07-03 09:55
from django.db import migrations, models
class Migration(migrations.Migration):
dependencies = [
('users', '0004_user_avatar_url'),
]
operations = [
migrations.RemoveField(
model_name='schoolclass',
name='year',
),
migrations.AlterField(
model_name='user',
name='email',
field=models.EmailField(max_length=254, unique=True, verbose_name='email address'),
),
]

View File

@ -13,6 +13,7 @@ DEFAULT_SCHOOL_ID = 1
class User(AbstractUser):
last_module = models.ForeignKey('books.Module', related_name='+', on_delete=models.SET_NULL, null=True)
avatar_url = models.CharField(max_length=254, blank=True, default='')
email = models.EmailField(_('email address'), unique=True)
def get_role_permissions(self):
perms = set()
@ -44,13 +45,11 @@ class User(AbstractUser):
class SchoolClass(models.Model):
name = models.CharField(max_length=100, blank=False, null=False)
year = models.PositiveIntegerField(blank=False, null=False,
validators=[MinValueValidator(1900), MaxValueValidator(2200)])
is_deleted = models.BooleanField(blank=False, null=False, default=False)
users = models.ManyToManyField(get_user_model(), related_name='school_classes')
def __str__(self):
return 'SchoolClass {}-{}-{}'.format(self.id, self.name, self.year)
return 'SchoolClass {}-{}'.format(self.id, self.name)
def is_user_in_schoolclass(self, user):
return user.is_superuser or user.school_classes.filter(pk=self.id).count() > 0

View File

@ -21,7 +21,6 @@ def create_users(data=None):
SchoolClassFactory(
users=[teacher] + students,
year='2018',
name='skillbox'
)
teacher2 = UserFactory(username='teacher2')
@ -30,7 +29,6 @@ def create_users(data=None):
UserRole.objects.create(user=student_second_class, role=student_role)
SchoolClassFactory(
users=[teacher2, student_second_class],
year='2018',
name='second_class'
)
@ -59,5 +57,4 @@ def create_users(data=None):
SchoolClassFactory(
users=students + [teacher],
name=school_class.get('class'),
year='2018'
)