added member system
parent
2235be9082
commit
6dd141b3fa
@ -0,0 +1,18 @@
|
||||
from django.contrib import admin
|
||||
|
||||
from .models import Member, Group
|
||||
|
||||
|
||||
# Register your models here.
|
||||
class MemberAdmin(admin.ModelAdmin):
|
||||
fields = ['prename', 'lastname', 'email', 'birth_date', 'group']
|
||||
list_display = ('name', 'birth_date')
|
||||
|
||||
|
||||
class GroupAdmin(admin.ModelAdmin):
|
||||
fields = ['name', 'min_age']
|
||||
list_display = ('name', 'min_age')
|
||||
|
||||
|
||||
admin.site.register(Member, MemberAdmin)
|
||||
admin.site.register(Group, GroupAdmin)
|
||||
@ -0,0 +1,5 @@
|
||||
from django.apps import AppConfig
|
||||
|
||||
|
||||
class MembersConfig(AppConfig):
|
||||
name = 'members'
|
||||
@ -0,0 +1,35 @@
|
||||
# -*- coding: utf-8 -*-
|
||||
# Generated by Django 1.10.2 on 2016-10-18 17:36
|
||||
from __future__ import unicode_literals
|
||||
|
||||
from django.db import migrations, models
|
||||
import django.db.models.deletion
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
|
||||
initial = True
|
||||
|
||||
dependencies = [
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.CreateModel(
|
||||
name='Group',
|
||||
fields=[
|
||||
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
|
||||
('name', models.CharField(max_length=20)),
|
||||
('min_age', models.IntegerField(default=5)),
|
||||
],
|
||||
),
|
||||
migrations.CreateModel(
|
||||
name='Member',
|
||||
fields=[
|
||||
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
|
||||
('prename', models.CharField(max_length=20)),
|
||||
('lastname', models.CharField(max_length=20)),
|
||||
('birth_date', models.DateField(verbose_name='birth date')),
|
||||
('group', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='members.Group')),
|
||||
],
|
||||
),
|
||||
]
|
||||
@ -0,0 +1,20 @@
|
||||
# -*- coding: utf-8 -*-
|
||||
# Generated by Django 1.10.2 on 2016-10-18 17:41
|
||||
from __future__ import unicode_literals
|
||||
|
||||
from django.db import migrations, models
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
|
||||
dependencies = [
|
||||
('members', '0001_initial'),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.AddField(
|
||||
model_name='member',
|
||||
name='email',
|
||||
field=models.CharField(default='', max_length=100),
|
||||
),
|
||||
]
|
||||
@ -0,0 +1,20 @@
|
||||
# -*- coding: utf-8 -*-
|
||||
# Generated by Django 1.10.2 on 2016-10-18 17:42
|
||||
from __future__ import unicode_literals
|
||||
|
||||
from django.db import migrations, models
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
|
||||
dependencies = [
|
||||
('members', '0002_member_email'),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.AlterField(
|
||||
model_name='member',
|
||||
name='email',
|
||||
field=models.EmailField(default='', max_length=100),
|
||||
),
|
||||
]
|
||||
@ -0,0 +1,24 @@
|
||||
# -*- coding: utf-8 -*-
|
||||
# Generated by Django 1.10.2 on 2016-10-18 17:44
|
||||
from __future__ import unicode_literals
|
||||
|
||||
from django.db import migrations, models
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
|
||||
dependencies = [
|
||||
('members', '0003_auto_20161018_1742'),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.RemoveField(
|
||||
model_name='member',
|
||||
name='group',
|
||||
),
|
||||
migrations.AddField(
|
||||
model_name='member',
|
||||
name='group',
|
||||
field=models.ManyToManyField(to='members.Group'),
|
||||
),
|
||||
]
|
||||
@ -0,0 +1,25 @@
|
||||
from django.db import models
|
||||
|
||||
|
||||
class Group(models.Model):
|
||||
name = models.CharField(max_length=20) # name of group e.g: J1 etc.
|
||||
min_age = models.IntegerField(default=5) # in years
|
||||
|
||||
def __str__(self):
|
||||
return "Group {0}".format(self.name)
|
||||
|
||||
|
||||
class Member(models.Model):
|
||||
prename = models.CharField(max_length=20)
|
||||
lastname = models.CharField(max_length=20)
|
||||
email = models.EmailField(max_length=100, default="")
|
||||
birth_date = models.DateField('birth date') # to determine the age
|
||||
group = models.ManyToManyField(Group)
|
||||
|
||||
def __repr__(self):
|
||||
return self.name
|
||||
|
||||
@property
|
||||
def name(self):
|
||||
"""Returning whole name (prename + lastname)"""
|
||||
return "{0} {1}".format(self.prename, self.lastname)
|
||||
@ -0,0 +1,3 @@
|
||||
from django.test import TestCase
|
||||
|
||||
# Create your tests here.
|
||||
@ -0,0 +1,3 @@
|
||||
from django.shortcuts import render
|
||||
|
||||
# Create your views here.
|
||||
Loading…
Reference in New Issue