Commit 4f16a4b036bbf347b05b1938e9a9adec533d1ed3
1 parent
a08d5f5b
Exists in
master
and in
5 other branches
modifying courses model and it's fields, I had to rewrite some code because it w…
…ouldn't work and I've also changed the migrations, all of us will have to erase our database indeed
Showing
22 changed files
with
131 additions
and
463 deletions
Show diff stats
app/migrations/0001_initial.py
1 | 1 | # -*- coding: utf-8 -*- |
2 | -# Generated by Django 1.10 on 2016-11-15 22:36 | |
2 | +# Generated by Django 1.10 on 2016-11-16 20:53 | |
3 | 3 | from __future__ import unicode_literals |
4 | 4 | |
5 | 5 | from django.db import migrations, models |
... | ... | @@ -23,11 +23,11 @@ class Migration(migrations.Migration): |
23 | 23 | ('username', models.CharField(max_length=30, verbose_name='Email host username')), |
24 | 24 | ('password', models.CharField(blank=True, max_length=30, verbose_name='Email host password')), |
25 | 25 | ('safe_conection', models.IntegerField(choices=[(0, 'No'), (1, 'TLS, if available'), (2, 'TLS'), (3, 'SSL')], default=0, verbose_name='Use safe conection')), |
26 | - ('default_from_email', models.EmailField(blank=True, max_length=254, verbose_name='Default from email')), | |
26 | + ('default_from_email', models.EmailField(max_length=254, verbose_name='Default from email')), | |
27 | 27 | ], |
28 | 28 | options={ |
29 | - 'verbose_name': 'Amadeus SMTP setting', | |
30 | 29 | 'verbose_name_plural': 'Amadeus SMTP settings', |
30 | + 'verbose_name': 'Amadeus SMTP setting', | |
31 | 31 | }, |
32 | 32 | ), |
33 | 33 | ] | ... | ... |
app/migrations/0002_auto_20161115_2054.py
... | ... | @@ -1,20 +0,0 @@ |
1 | -# -*- coding: utf-8 -*- | |
2 | -# Generated by Django 1.10 on 2016-11-15 23:54 | |
3 | -from __future__ import unicode_literals | |
4 | - | |
5 | -from django.db import migrations, models | |
6 | - | |
7 | - | |
8 | -class Migration(migrations.Migration): | |
9 | - | |
10 | - dependencies = [ | |
11 | - ('app', '0001_initial'), | |
12 | - ] | |
13 | - | |
14 | - operations = [ | |
15 | - migrations.AlterField( | |
16 | - model_name='emailbackend', | |
17 | - name='default_from_email', | |
18 | - field=models.EmailField(max_length=254, verbose_name='Default from email'), | |
19 | - ), | |
20 | - ] |
core/migrations/0001_initial.py
1 | 1 | # -*- coding: utf-8 -*- |
2 | -# Generated by Django 1.10 on 2016-11-15 22:36 | |
2 | +# Generated by Django 1.10 on 2016-11-16 20:53 | |
3 | 3 | from __future__ import unicode_literals |
4 | 4 | |
5 | 5 | import autoslug.fields |
6 | +from django.conf import settings | |
6 | 7 | import django.contrib.postgres.fields.jsonb |
7 | 8 | from django.db import migrations, models |
8 | 9 | import django.db.models.deletion |
... | ... | @@ -13,6 +14,7 @@ class Migration(migrations.Migration): |
13 | 14 | initial = True |
14 | 15 | |
15 | 16 | dependencies = [ |
17 | + migrations.swappable_dependency(settings.AUTH_USER_MODEL), | |
16 | 18 | ] |
17 | 19 | |
18 | 20 | operations = [ |
... | ... | @@ -25,18 +27,19 @@ class Migration(migrations.Migration): |
25 | 27 | ('created_date', models.DateTimeField(auto_now_add=True, verbose_name='Created Date')), |
26 | 28 | ], |
27 | 29 | options={ |
28 | - 'verbose_name': 'Action', | |
29 | 30 | 'verbose_name_plural': 'Actions', |
31 | + 'verbose_name': 'Action', | |
30 | 32 | }, |
31 | 33 | ), |
32 | 34 | migrations.CreateModel( |
33 | 35 | name='Action_Resource', |
34 | 36 | fields=[ |
35 | 37 | ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), |
38 | + ('action', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='core.Action', verbose_name='Action_Applied')), | |
36 | 39 | ], |
37 | 40 | options={ |
38 | - 'verbose_name': 'Action_Resource', | |
39 | 41 | 'verbose_name_plural': 'Action_Resources', |
42 | + 'verbose_name': 'Action_Resource', | |
40 | 43 | }, |
41 | 44 | ), |
42 | 45 | migrations.CreateModel( |
... | ... | @@ -46,10 +49,12 @@ class Migration(migrations.Migration): |
46 | 49 | ('component', models.TextField(verbose_name='Component (Module / App)')), |
47 | 50 | ('context', django.contrib.postgres.fields.jsonb.JSONField(blank=True, verbose_name='Context')), |
48 | 51 | ('datetime', models.DateTimeField(auto_now_add=True, verbose_name='Date and Time of action')), |
52 | + ('action_resource', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='core.Action_Resource', verbose_name='Action_Resource')), | |
53 | + ('user', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL, verbose_name='Actor')), | |
49 | 54 | ], |
50 | 55 | options={ |
51 | - 'verbose_name': 'Log', | |
52 | 56 | 'verbose_name_plural': 'Logs', |
57 | + 'verbose_name': 'Log', | |
53 | 58 | }, |
54 | 59 | ), |
55 | 60 | migrations.CreateModel( |
... | ... | @@ -60,8 +65,8 @@ class Migration(migrations.Migration): |
60 | 65 | ('icon', models.CharField(max_length=50, unique=True, verbose_name='Icon')), |
61 | 66 | ], |
62 | 67 | options={ |
63 | - 'verbose_name': 'Amadeus Mime Type', | |
64 | 68 | 'verbose_name_plural': 'Amadeus Mime Types', |
69 | + 'verbose_name': 'Amadeus Mime Type', | |
65 | 70 | }, |
66 | 71 | ), |
67 | 72 | migrations.CreateModel( |
... | ... | @@ -72,10 +77,12 @@ class Migration(migrations.Migration): |
72 | 77 | ('read', models.BooleanField(default=False, verbose_name='Read')), |
73 | 78 | ('datetime', models.DateTimeField(auto_now_add=True, verbose_name='Date and Time of action')), |
74 | 79 | ('action_resource', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='core.Action_Resource', verbose_name='Action_Resource')), |
80 | + ('actor', models.ForeignKey(null=True, on_delete=django.db.models.deletion.CASCADE, related_name='notification_Performer', to=settings.AUTH_USER_MODEL, verbose_name='Performer')), | |
81 | + ('user', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='notification_Actor', to=settings.AUTH_USER_MODEL, verbose_name='User')), | |
75 | 82 | ], |
76 | 83 | options={ |
77 | - 'verbose_name': 'Notification', | |
78 | 84 | 'verbose_name_plural': 'Notifications', |
85 | + 'verbose_name': 'Notification', | |
79 | 86 | }, |
80 | 87 | ), |
81 | 88 | migrations.CreateModel( |
... | ... | @@ -88,8 +95,13 @@ class Migration(migrations.Migration): |
88 | 95 | ('url', models.CharField(default='', max_length=100, verbose_name='URL')), |
89 | 96 | ], |
90 | 97 | options={ |
91 | - 'verbose_name': 'Resource', | |
92 | 98 | 'verbose_name_plural': 'Resources', |
99 | + 'verbose_name': 'Resource', | |
93 | 100 | }, |
94 | 101 | ), |
102 | + migrations.AddField( | |
103 | + model_name='action_resource', | |
104 | + name='resource', | |
105 | + field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='core.Resource', verbose_name='Resource'), | |
106 | + ), | |
95 | 107 | ] | ... | ... |
core/migrations/0002_auto_20161115_1936.py
... | ... | @@ -1,50 +0,0 @@ |
1 | -# -*- coding: utf-8 -*- | |
2 | -# Generated by Django 1.10 on 2016-11-15 22:36 | |
3 | -from __future__ import unicode_literals | |
4 | - | |
5 | -from django.conf import settings | |
6 | -from django.db import migrations, models | |
7 | -import django.db.models.deletion | |
8 | - | |
9 | - | |
10 | -class Migration(migrations.Migration): | |
11 | - | |
12 | - initial = True | |
13 | - | |
14 | - dependencies = [ | |
15 | - migrations.swappable_dependency(settings.AUTH_USER_MODEL), | |
16 | - ('core', '0001_initial'), | |
17 | - ] | |
18 | - | |
19 | - operations = [ | |
20 | - migrations.AddField( | |
21 | - model_name='notification', | |
22 | - name='actor', | |
23 | - field=models.ForeignKey(null=True, on_delete=django.db.models.deletion.CASCADE, related_name='notification_Performer', to=settings.AUTH_USER_MODEL, verbose_name='Performer'), | |
24 | - ), | |
25 | - migrations.AddField( | |
26 | - model_name='notification', | |
27 | - name='user', | |
28 | - field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='notification_Actor', to=settings.AUTH_USER_MODEL, verbose_name='User'), | |
29 | - ), | |
30 | - migrations.AddField( | |
31 | - model_name='log', | |
32 | - name='action_resource', | |
33 | - field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='core.Action_Resource', verbose_name='Action_Resource'), | |
34 | - ), | |
35 | - migrations.AddField( | |
36 | - model_name='log', | |
37 | - name='user', | |
38 | - field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL, verbose_name='Actor'), | |
39 | - ), | |
40 | - migrations.AddField( | |
41 | - model_name='action_resource', | |
42 | - name='action', | |
43 | - field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='core.Action', verbose_name='Action_Applied'), | |
44 | - ), | |
45 | - migrations.AddField( | |
46 | - model_name='action_resource', | |
47 | - name='resource', | |
48 | - field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='core.Resource', verbose_name='Resource'), | |
49 | - ), | |
50 | - ] |
courses/forms.py
... | ... | @@ -18,64 +18,30 @@ class CategoryCourseForm(forms.ModelForm): |
18 | 18 | |
19 | 19 | |
20 | 20 | class CourseForm(forms.ModelForm): |
21 | - def clean_end_register_date(self): | |
22 | - init_register_date = self.cleaned_data['init_register_date'] | |
23 | - end_register_date = self.cleaned_data['end_register_date'] | |
24 | - | |
25 | - if init_register_date and end_register_date and end_register_date < init_register_date: | |
26 | - raise forms.ValidationError(_('The end date may not be before the start date.')) | |
27 | - return end_register_date | |
28 | - | |
29 | - def clean_init_date(self): | |
30 | - end_register_date = self.cleaned_data['end_register_date'] | |
31 | - init_date = self.cleaned_data['init_date'] | |
32 | - | |
33 | - if end_register_date and init_date and init_date <= end_register_date: | |
34 | - raise forms.ValidationError(_('The course start date must be after the end of registration.')) | |
35 | - return init_date | |
36 | - | |
37 | - def clean_end_date(self): | |
38 | - init_date = self.cleaned_data['init_date'] | |
39 | - end_date = self.cleaned_data['end_date'] | |
40 | - | |
41 | - if init_date and end_date and end_date < init_date: | |
42 | - raise forms.ValidationError(_('The end date may not be before the start date.')) | |
43 | - return end_date | |
21 | + | |
44 | 22 | |
45 | 23 | |
46 | 24 | class Meta: |
47 | 25 | model = Course |
48 | - fields = ('name', 'objectivies', 'content', 'max_students', 'init_register_date', 'end_register_date', | |
49 | - 'init_date', 'end_date', 'category', 'coordenator','public') | |
26 | + fields = ('name', 'description', | |
27 | + 'category', 'coordenator','public') | |
50 | 28 | labels = { |
51 | 29 | 'name': _('Name'), |
52 | - 'objectivies': _('Objectives'), | |
53 | 30 | 'content': _('Content'), |
54 | - 'max_students': _('Number of studets maximum'), | |
55 | - 'init_register_date': _('Course registration start date'), | |
56 | - 'end_register_date': _('Course registration end date'), | |
57 | - 'init_date': _('Course start date'), | |
58 | - 'end_date': _('Course end date'), | |
59 | 31 | 'category': _('Category'), |
60 | 32 | 'coordenator': _('Coordenator'), |
61 | 33 | 'public':_('Public'), |
62 | 34 | } |
63 | 35 | help_texts = { |
64 | 36 | 'name': _('Course name'), |
65 | - 'objectivies': _('Course objective'), | |
66 | 37 | 'content': _('Course modules'), |
67 | - 'max_students': _('Max number of students that a class can have'), | |
68 | - 'init_register_date': _('Date that starts the registration period of the course (dd/mm/yyyy)'), | |
69 | - 'end_register_date': _('Date that ends the registration period of the course (dd/mm/yyyy)'), | |
70 | - 'init_date': _('Date that the course starts (dd/mm/yyyy)'), | |
71 | - 'end_date': _('Date that the course ends (dd/mm/yyyy)'), | |
72 | 38 | 'category': _('CourseCategory which the course belongs'), |
73 | 39 | 'coordenator': _('Course Coordenator'), |
74 | 40 | 'public':_('To define if the course can be accessed by people not registered'), |
75 | 41 | } |
76 | 42 | |
77 | 43 | widgets = { |
78 | - 'ategoy': forms.Select(), | |
44 | + 'category': forms.Select(), | |
79 | 45 | 'coordenator': forms.Select(), |
80 | 46 | 'content': SummernoteWidget(), |
81 | 47 | 'objectivies': SummernoteWidget(), |
... | ... | @@ -83,70 +49,31 @@ class CourseForm(forms.ModelForm): |
83 | 49 | |
84 | 50 | class UpdateCourseForm(CourseForm): |
85 | 51 | |
86 | - def clean_end_register_date(self): | |
87 | - init_register_date = self.cleaned_data['init_register_date'] | |
88 | - end_register_date = self.cleaned_data['end_register_date'] | |
89 | - | |
90 | - if init_register_date and end_register_date and end_register_date < init_register_date: | |
91 | - raise forms.ValidationError(_('The end date may not be before the start date.')) | |
92 | - return end_register_date | |
93 | - | |
94 | - def clean_init_date(self): | |
95 | - end_register_date = self.cleaned_data['end_register_date'] | |
96 | - init_date = self.cleaned_data['init_date'] | |
97 | - | |
98 | - if end_register_date and init_date and init_date <= end_register_date: | |
99 | - raise forms.ValidationError(_('The course start date must be after the end of registration.')) | |
100 | - return init_date | |
101 | - | |
102 | - def clean_end_date(self): | |
103 | - init_date = self.cleaned_data['init_date'] | |
104 | - end_date = self.cleaned_data['end_date'] | |
105 | - | |
106 | - if init_date and end_date and end_date < init_date: | |
107 | - raise forms.ValidationError(_('The end date may not be before the start date.')) | |
108 | - return end_date | |
109 | - | |
110 | 52 | def __init__(self, *args, **kwargs): |
111 | 53 | super(UpdateCourseForm, self).__init__(*args, **kwargs) |
112 | - self.fields["students"].required = False | |
113 | 54 | |
114 | 55 | class Meta: |
115 | 56 | model = Course |
116 | - fields = ('name', 'objectivies', 'content', 'max_students', 'init_register_date', 'end_register_date', | |
117 | - 'init_date', 'end_date', 'category','students', 'coordenator','public') | |
57 | + fields = ('name', 'description', | |
58 | + 'category', 'coordenator','public') | |
118 | 59 | labels = { |
119 | 60 | 'name': _('Name'), |
120 | - 'objectivies': _('Objectives'), | |
121 | - 'content': _('Content'), | |
122 | - 'max_students': _('Number of studets maximum'), | |
123 | - 'init_register_date': _('Course registration start date'), | |
124 | - 'end_register_date': _('Course registration end date'), | |
125 | - 'init_date': _('Course start date'), | |
126 | - 'end_date': _('Course end date'), | |
61 | + 'description': _('Description'), | |
127 | 62 | 'category': _('Category'), |
128 | 63 | 'coordenator': _('Coordenator'), |
129 | - 'students': _('Student'), | |
130 | 64 | 'public':_('Public'), |
131 | 65 | } |
132 | 66 | help_texts = { |
133 | 67 | 'name': _('Course name'), |
134 | - 'objectivies': _('Course objective'), | |
135 | - 'content': _('Course modules'), | |
136 | - 'max_students': _('Max number of students that a class can have'), | |
137 | - 'init_register_date': _('Date that starts the registration period of the course (dd/mm/yyyy)'), | |
138 | - 'end_register_date': _('Date that ends the registration period of the course (dd/mm/yyyy)'), | |
139 | - 'init_date': _('Date that the course starts (dd/mm/yyyy)'), | |
140 | - 'end_date': _('Date that the course ends (dd/mm/yyyy)'), | |
68 | + 'description': _('Description about the course'), | |
141 | 69 | 'category': _('CourseCategory which the course belongs'), |
142 | 70 | 'coordenator': _('Course Coordenator'), |
143 | - 'students': _("Course's Students"), | |
144 | 71 | 'public':_('To define if the course can be accessed by people not registered'), |
145 | 72 | } |
146 | 73 | widgets = { |
147 | - 'categoy': forms.Select(), | |
74 | + 'category': forms.Select(), | |
148 | 75 | 'coordenator': forms.Select(), |
149 | - 'content': SummernoteWidget(), | |
76 | + 'description': SummernoteWidget(), | |
150 | 77 | 'objectivies': SummernoteWidget(), |
151 | 78 | } |
152 | 79 | ... | ... |
courses/migrations/0001_initial.py
1 | 1 | # -*- coding: utf-8 -*- |
2 | -# Generated by Django 1.10 on 2016-11-15 22:36 | |
2 | +# Generated by Django 1.10 on 2016-11-16 20:52 | |
3 | 3 | from __future__ import unicode_literals |
4 | 4 | |
5 | 5 | import autoslug.fields |
6 | +from django.conf import settings | |
6 | 7 | from django.db import migrations, models |
7 | 8 | import django.db.models.deletion |
8 | 9 | import s3direct.fields |
... | ... | @@ -13,7 +14,8 @@ class Migration(migrations.Migration): |
13 | 14 | initial = True |
14 | 15 | |
15 | 16 | dependencies = [ |
16 | - ('core', '0001_initial'), | |
17 | + migrations.swappable_dependency(settings.AUTH_USER_MODEL), | |
18 | + ('core', '__first__'), | |
17 | 19 | ] |
18 | 20 | |
19 | 21 | operations = [ |
... | ... | @@ -23,6 +25,7 @@ class Migration(migrations.Migration): |
23 | 25 | ('resource_ptr', models.OneToOneField(auto_created=True, on_delete=django.db.models.deletion.CASCADE, parent_link=True, primary_key=True, serialize=False, to='core.Resource')), |
24 | 26 | ('limit_date', models.DateField(verbose_name='Deliver Date')), |
25 | 27 | ('all_students', models.BooleanField(default=False, verbose_name='All Students')), |
28 | + ('students', models.ManyToManyField(related_name='activities', to=settings.AUTH_USER_MODEL, verbose_name='Students')), | |
26 | 29 | ], |
27 | 30 | bases=('core.resource',), |
28 | 31 | ), |
... | ... | @@ -32,10 +35,11 @@ class Migration(migrations.Migration): |
32 | 35 | ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), |
33 | 36 | ('pdf', s3direct.fields.S3DirectField()), |
34 | 37 | ('name', models.CharField(max_length=100)), |
38 | + ('diet', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='files', to='courses.Activity')), | |
35 | 39 | ], |
36 | 40 | options={ |
37 | - 'verbose_name': 'Activity File', | |
38 | 41 | 'verbose_name_plural': 'Activitys Files', |
42 | + 'verbose_name': 'Activity File', | |
39 | 43 | }, |
40 | 44 | ), |
41 | 45 | migrations.CreateModel( |
... | ... | @@ -47,8 +51,8 @@ class Migration(migrations.Migration): |
47 | 51 | ('create_date', models.DateTimeField(auto_now_add=True, verbose_name='Creation Date')), |
48 | 52 | ], |
49 | 53 | options={ |
50 | - 'verbose_name': 'Category', | |
51 | 54 | 'verbose_name_plural': 'Categories', |
55 | + 'verbose_name': 'Category', | |
52 | 56 | }, |
53 | 57 | ), |
54 | 58 | migrations.CreateModel( |
... | ... | @@ -57,20 +61,13 @@ class Migration(migrations.Migration): |
57 | 61 | ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), |
58 | 62 | ('name', models.CharField(max_length=100, verbose_name='Name')), |
59 | 63 | ('slug', autoslug.fields.AutoSlugField(editable=False, populate_from='name', unique=True, verbose_name='Slug')), |
60 | - ('objectivies', models.TextField(blank=True, verbose_name='Objectivies')), | |
61 | - ('content', models.TextField(blank=True, verbose_name='Content')), | |
62 | - ('max_students', models.PositiveIntegerField(blank=True, verbose_name='Maximum Students')), | |
63 | - ('create_date', models.DateTimeField(auto_now_add=True, verbose_name='Creation Date')), | |
64 | - ('init_register_date', models.DateField(verbose_name='Register Date (Begin)')), | |
65 | - ('end_register_date', models.DateField(verbose_name='Register Date (End)')), | |
66 | - ('init_date', models.DateField(verbose_name='Begin of Course Date')), | |
67 | - ('end_date', models.DateField(verbose_name='End of Course Date')), | |
64 | + ('description', models.TextField(blank=True, verbose_name='Content')), | |
68 | 65 | ('public', models.BooleanField(default=False, verbose_name='Public')), |
69 | 66 | ], |
70 | 67 | options={ |
71 | - 'verbose_name': 'Course', | |
68 | + 'ordering': ('name',), | |
72 | 69 | 'verbose_name_plural': 'Courses', |
73 | - 'ordering': ('create_date', 'name'), | |
70 | + 'verbose_name': 'Course', | |
74 | 71 | }, |
75 | 72 | ), |
76 | 73 | migrations.CreateModel( |
... | ... | @@ -82,8 +79,8 @@ class Migration(migrations.Migration): |
82 | 79 | ('create_date', models.DateTimeField(auto_now_add=True, verbose_name='Creation Date')), |
83 | 80 | ], |
84 | 81 | options={ |
85 | - 'verbose_name': 'Category', | |
86 | 82 | 'verbose_name_plural': 'Categories', |
83 | + 'verbose_name': 'Category', | |
87 | 84 | }, |
88 | 85 | ), |
89 | 86 | migrations.CreateModel( |
... | ... | @@ -108,6 +105,7 @@ class Migration(migrations.Migration): |
108 | 105 | fields=[ |
109 | 106 | ('resource_ptr', models.OneToOneField(auto_created=True, on_delete=django.db.models.deletion.CASCADE, parent_link=True, primary_key=True, serialize=False, to='core.Resource')), |
110 | 107 | ('all_students', models.BooleanField(default=False, verbose_name='All Students')), |
108 | + ('students', models.ManyToManyField(related_name='materials', to=settings.AUTH_USER_MODEL, verbose_name='Students')), | |
111 | 109 | ], |
112 | 110 | bases=('core.resource',), |
113 | 111 | ), |
... | ... | @@ -125,11 +123,13 @@ class Migration(migrations.Migration): |
125 | 123 | ('update_date', models.DateTimeField(auto_now=True, verbose_name='Date of last update')), |
126 | 124 | ('category', models.ForeignKey(null=True, on_delete=django.db.models.deletion.CASCADE, related_name='subject_category', to='courses.CategorySubject', verbose_name='Category')), |
127 | 125 | ('course', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='subjects', to='courses.Course', verbose_name='Course')), |
126 | + ('professors', models.ManyToManyField(related_name='professors_subjects', to=settings.AUTH_USER_MODEL, verbose_name='Professors')), | |
127 | + ('students', models.ManyToManyField(blank=True, related_name='subject_student', to=settings.AUTH_USER_MODEL, verbose_name='Students')), | |
128 | 128 | ], |
129 | 129 | options={ |
130 | - 'verbose_name': 'Subject', | |
131 | - 'verbose_name_plural': 'Subjects', | |
132 | 130 | 'ordering': ('create_date', 'name'), |
131 | + 'verbose_name_plural': 'Subjects', | |
132 | + 'verbose_name': 'Subject', | |
133 | 133 | }, |
134 | 134 | ), |
135 | 135 | migrations.CreateModel( |
... | ... | @@ -142,8 +142,8 @@ class Migration(migrations.Migration): |
142 | 142 | ('subjects', models.ManyToManyField(to='courses.Subject')), |
143 | 143 | ], |
144 | 144 | options={ |
145 | - 'verbose_name': 'subject category', | |
146 | 145 | 'verbose_name_plural': 'subject categories', |
146 | + 'verbose_name': 'subject category', | |
147 | 147 | }, |
148 | 148 | ), |
149 | 149 | migrations.CreateModel( |
... | ... | @@ -159,9 +159,39 @@ class Migration(migrations.Migration): |
159 | 159 | ('subject', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='courses.Subject', verbose_name='Subject')), |
160 | 160 | ], |
161 | 161 | options={ |
162 | - 'verbose_name': 'Topic', | |
163 | - 'verbose_name_plural': 'Topics', | |
164 | 162 | 'ordering': ('create_date', 'name'), |
163 | + 'verbose_name_plural': 'Topics', | |
164 | + 'verbose_name': 'Topic', | |
165 | 165 | }, |
166 | 166 | ), |
167 | + migrations.AddField( | |
168 | + model_name='material', | |
169 | + name='topic', | |
170 | + field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='materials', to='courses.Topic', verbose_name='Topic'), | |
171 | + ), | |
172 | + migrations.AddField( | |
173 | + model_name='linkmaterial', | |
174 | + name='material', | |
175 | + field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='material_link', to='courses.Material', verbose_name='Material'), | |
176 | + ), | |
177 | + migrations.AddField( | |
178 | + model_name='filematerial', | |
179 | + name='material', | |
180 | + field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='material_file', to='courses.Material', verbose_name='Material'), | |
181 | + ), | |
182 | + migrations.AddField( | |
183 | + model_name='course', | |
184 | + name='category', | |
185 | + field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='course_category', to='courses.CourseCategory', verbose_name='Category'), | |
186 | + ), | |
187 | + migrations.AddField( | |
188 | + model_name='course', | |
189 | + name='coordenator', | |
190 | + field=models.ForeignKey(null=True, on_delete=django.db.models.deletion.CASCADE, related_name='course_coordenator', to=settings.AUTH_USER_MODEL, verbose_name='Coordenator'), | |
191 | + ), | |
192 | + migrations.AddField( | |
193 | + model_name='activity', | |
194 | + name='topic', | |
195 | + field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='activities', to='courses.Topic', verbose_name='Topic'), | |
196 | + ), | |
167 | 197 | ] | ... | ... |
courses/migrations/0002_auto_20161115_1936.py
... | ... | @@ -1,85 +0,0 @@ |
1 | -# -*- coding: utf-8 -*- | |
2 | -# Generated by Django 1.10 on 2016-11-15 22:36 | |
3 | -from __future__ import unicode_literals | |
4 | - | |
5 | -from django.conf import settings | |
6 | -from django.db import migrations, models | |
7 | -import django.db.models.deletion | |
8 | - | |
9 | - | |
10 | -class Migration(migrations.Migration): | |
11 | - | |
12 | - initial = True | |
13 | - | |
14 | - dependencies = [ | |
15 | - ('courses', '0001_initial'), | |
16 | - migrations.swappable_dependency(settings.AUTH_USER_MODEL), | |
17 | - ] | |
18 | - | |
19 | - operations = [ | |
20 | - migrations.AddField( | |
21 | - model_name='subject', | |
22 | - name='professors', | |
23 | - field=models.ManyToManyField(related_name='professors_subjects', to=settings.AUTH_USER_MODEL, verbose_name='Professors'), | |
24 | - ), | |
25 | - migrations.AddField( | |
26 | - model_name='subject', | |
27 | - name='students', | |
28 | - field=models.ManyToManyField(blank=True, related_name='subject_student', to=settings.AUTH_USER_MODEL, verbose_name='Students'), | |
29 | - ), | |
30 | - migrations.AddField( | |
31 | - model_name='material', | |
32 | - name='students', | |
33 | - field=models.ManyToManyField(related_name='materials', to=settings.AUTH_USER_MODEL, verbose_name='Students'), | |
34 | - ), | |
35 | - migrations.AddField( | |
36 | - model_name='material', | |
37 | - name='topic', | |
38 | - field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='materials', to='courses.Topic', verbose_name='Topic'), | |
39 | - ), | |
40 | - migrations.AddField( | |
41 | - model_name='linkmaterial', | |
42 | - name='material', | |
43 | - field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='material_link', to='courses.Material', verbose_name='Material'), | |
44 | - ), | |
45 | - migrations.AddField( | |
46 | - model_name='filematerial', | |
47 | - name='material', | |
48 | - field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='material_file', to='courses.Material', verbose_name='Material'), | |
49 | - ), | |
50 | - migrations.AddField( | |
51 | - model_name='course', | |
52 | - name='category', | |
53 | - field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='course_category', to='courses.CourseCategory', verbose_name='Category'), | |
54 | - ), | |
55 | - migrations.AddField( | |
56 | - model_name='course', | |
57 | - name='coordenator', | |
58 | - field=models.ForeignKey(null=True, on_delete=django.db.models.deletion.CASCADE, related_name='course_coordenator', to=settings.AUTH_USER_MODEL, verbose_name='Coordenator'), | |
59 | - ), | |
60 | - migrations.AddField( | |
61 | - model_name='course', | |
62 | - name='professors', | |
63 | - field=models.ManyToManyField(related_name='courses_professors', to=settings.AUTH_USER_MODEL, verbose_name='Professors'), | |
64 | - ), | |
65 | - migrations.AddField( | |
66 | - model_name='course', | |
67 | - name='students', | |
68 | - field=models.ManyToManyField(blank=True, related_name='courses_student', to=settings.AUTH_USER_MODEL, verbose_name='Students'), | |
69 | - ), | |
70 | - migrations.AddField( | |
71 | - model_name='activityfile', | |
72 | - name='diet', | |
73 | - field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='files', to='courses.Activity'), | |
74 | - ), | |
75 | - migrations.AddField( | |
76 | - model_name='activity', | |
77 | - name='students', | |
78 | - field=models.ManyToManyField(related_name='activities', to=settings.AUTH_USER_MODEL, verbose_name='Students'), | |
79 | - ), | |
80 | - migrations.AddField( | |
81 | - model_name='activity', | |
82 | - name='topic', | |
83 | - field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='activities', to='courses.Topic', verbose_name='Topic'), | |
84 | - ), | |
85 | - ] |
courses/models.py
... | ... | @@ -38,22 +38,13 @@ class Course(models.Model): |
38 | 38 | |
39 | 39 | name = models.CharField(_('Name'), max_length = 100) |
40 | 40 | slug = AutoSlugField(_("Slug"),populate_from='name',unique=True) |
41 | - objectivies = models.TextField(_('Objectivies'), blank = True) | |
42 | - content = models.TextField(_('Content'), blank = True) | |
43 | - max_students = models.PositiveIntegerField(_('Maximum Students'), blank = True) | |
44 | - create_date = models.DateTimeField(_('Creation Date'), auto_now_add = True) | |
45 | - init_register_date = models.DateField(_('Register Date (Begin)')) | |
46 | - end_register_date = models.DateField(_('Register Date (End)')) | |
47 | - init_date = models.DateField(_('Begin of Course Date')) | |
48 | - end_date = models.DateField(_('End of Course Date')) | |
41 | + description = models.TextField(_('Content'), blank = True) | |
49 | 42 | category = models.ForeignKey(CourseCategory, verbose_name = _('Category'), related_name='course_category') |
50 | 43 | coordenator = models.ForeignKey(User, verbose_name = _('Coordenator'), related_name ='course_coordenator', null = True) |
51 | - professors = models.ManyToManyField(User,verbose_name=_('Professors'), related_name='courses_professors') | |
52 | - students = models.ManyToManyField(User,verbose_name=_('Students'), related_name='courses_student', blank = True) | |
53 | 44 | public = models.BooleanField(_('Public'), default=False) |
54 | 45 | |
55 | 46 | class Meta: |
56 | - ordering = ('create_date','name') | |
47 | + ordering = ('name',) | |
57 | 48 | verbose_name = _('Course') |
58 | 49 | verbose_name_plural = _('Courses') |
59 | 50 | ... | ... |
courses/templates/course/course_card.html
... | ... | @@ -59,7 +59,7 @@ |
59 | 59 | <div class="modal-dialog" role="document"> |
60 | 60 | <div class="modal-content"> |
61 | 61 | <div class="modal-header"> |
62 | - <h4 class="modal-title">{% trans 'Repicate Course' %}</h4> | |
62 | + <h4 class="modal-title">{% trans 'Replicate Course' %}</h4> | |
63 | 63 | </div> |
64 | 64 | <div class="modal-body"> |
65 | 65 | <section> | ... | ... |
exam/migrations/0001_initial.py
1 | 1 | # -*- coding: utf-8 -*- |
2 | -# Generated by Django 1.10 on 2016-11-15 22:36 | |
2 | +# Generated by Django 1.10 on 2016-11-16 20:53 | |
3 | 3 | from __future__ import unicode_literals |
4 | 4 | |
5 | +from django.conf import settings | |
5 | 6 | from django.db import migrations, models |
6 | 7 | import django.db.models.deletion |
7 | 8 | |
... | ... | @@ -12,6 +13,7 @@ class Migration(migrations.Migration): |
12 | 13 | |
13 | 14 | dependencies = [ |
14 | 15 | ('courses', '0001_initial'), |
16 | + migrations.swappable_dependency(settings.AUTH_USER_MODEL), | |
15 | 17 | ] |
16 | 18 | |
17 | 19 | operations = [ |
... | ... | @@ -23,9 +25,9 @@ class Migration(migrations.Migration): |
23 | 25 | ('order', models.PositiveSmallIntegerField(verbose_name='Order')), |
24 | 26 | ], |
25 | 27 | options={ |
28 | + 'ordering': ('order',), | |
26 | 29 | 'verbose_name': 'Answer', |
27 | 30 | 'verbose_name_plural': 'Answers', |
28 | - 'ordering': ('order',), | |
29 | 31 | }, |
30 | 32 | ), |
31 | 33 | migrations.CreateModel( |
... | ... | @@ -59,4 +61,14 @@ class Migration(migrations.Migration): |
59 | 61 | name='exam', |
60 | 62 | field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='student_exam', to='exam.Exam', verbose_name='Exam'), |
61 | 63 | ), |
64 | + migrations.AddField( | |
65 | + model_name='answersstudent', | |
66 | + name='student', | |
67 | + field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='student', to=settings.AUTH_USER_MODEL, verbose_name='Student'), | |
68 | + ), | |
69 | + migrations.AddField( | |
70 | + model_name='answer', | |
71 | + name='exam', | |
72 | + field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='answers', to='exam.Exam', verbose_name='Answers'), | |
73 | + ), | |
62 | 74 | ] | ... | ... |
exam/migrations/0002_auto_20161115_1936.py
... | ... | @@ -1,30 +0,0 @@ |
1 | -# -*- coding: utf-8 -*- | |
2 | -# Generated by Django 1.10 on 2016-11-15 22:36 | |
3 | -from __future__ import unicode_literals | |
4 | - | |
5 | -from django.conf import settings | |
6 | -from django.db import migrations, models | |
7 | -import django.db.models.deletion | |
8 | - | |
9 | - | |
10 | -class Migration(migrations.Migration): | |
11 | - | |
12 | - initial = True | |
13 | - | |
14 | - dependencies = [ | |
15 | - migrations.swappable_dependency(settings.AUTH_USER_MODEL), | |
16 | - ('exam', '0001_initial'), | |
17 | - ] | |
18 | - | |
19 | - operations = [ | |
20 | - migrations.AddField( | |
21 | - model_name='answersstudent', | |
22 | - name='student', | |
23 | - field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='student', to=settings.AUTH_USER_MODEL, verbose_name='Student'), | |
24 | - ), | |
25 | - migrations.AddField( | |
26 | - model_name='answer', | |
27 | - name='exam', | |
28 | - field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='answers', to='exam.Exam', verbose_name='Answers'), | |
29 | - ), | |
30 | - ] |
exercise/migrations/0001_initial.py
files/migrations/0001_initial.py
1 | 1 | # -*- coding: utf-8 -*- |
2 | -# Generated by Django 1.10 on 2016-11-15 22:36 | |
2 | +# Generated by Django 1.10 on 2016-11-16 20:54 | |
3 | 3 | from __future__ import unicode_literals |
4 | 4 | |
5 | +from django.conf import settings | |
5 | 6 | from django.db import migrations, models |
6 | 7 | import django.db.models.deletion |
7 | 8 | import files.models |
... | ... | @@ -12,6 +13,7 @@ class Migration(migrations.Migration): |
12 | 13 | initial = True |
13 | 14 | |
14 | 15 | dependencies = [ |
16 | + migrations.swappable_dependency(settings.AUTH_USER_MODEL), | |
15 | 17 | ('courses', '0001_initial'), |
16 | 18 | ('core', '0001_initial'), |
17 | 19 | ] |
... | ... | @@ -24,11 +26,12 @@ class Migration(migrations.Migration): |
24 | 26 | ('description', models.TextField(blank=True, verbose_name='Description')), |
25 | 27 | ('file_url', models.FileField(upload_to=files.models.file_path, verbose_name='File')), |
26 | 28 | ('file_type', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='topic_files', to='core.MimeType', verbose_name='Type file')), |
29 | + ('professor', models.ManyToManyField(related_name='file_professors', to=settings.AUTH_USER_MODEL, verbose_name='Professors')), | |
27 | 30 | ], |
28 | 31 | options={ |
29 | - 'verbose_name': 'File', | |
30 | - 'verbose_name_plural': 'Files', | |
31 | 32 | 'ordering': ('-id',), |
33 | + 'verbose_name_plural': 'Files', | |
34 | + 'verbose_name': 'File', | |
32 | 35 | }, |
33 | 36 | bases=('courses.material',), |
34 | 37 | ), | ... | ... |
files/migrations/0002_topicfile_professor.py
... | ... | @@ -1,24 +0,0 @@ |
1 | -# -*- coding: utf-8 -*- | |
2 | -# Generated by Django 1.10 on 2016-11-15 22:36 | |
3 | -from __future__ import unicode_literals | |
4 | - | |
5 | -from django.conf import settings | |
6 | -from django.db import migrations, models | |
7 | - | |
8 | - | |
9 | -class Migration(migrations.Migration): | |
10 | - | |
11 | - initial = True | |
12 | - | |
13 | - dependencies = [ | |
14 | - migrations.swappable_dependency(settings.AUTH_USER_MODEL), | |
15 | - ('files', '0001_initial'), | |
16 | - ] | |
17 | - | |
18 | - operations = [ | |
19 | - migrations.AddField( | |
20 | - model_name='topicfile', | |
21 | - name='professor', | |
22 | - field=models.ManyToManyField(related_name='file_professors', to=settings.AUTH_USER_MODEL, verbose_name='Professors'), | |
23 | - ), | |
24 | - ] |
forum/migrations/0001_initial.py
1 | 1 | # -*- coding: utf-8 -*- |
2 | -# Generated by Django 1.10 on 2016-11-15 22:36 | |
2 | +# Generated by Django 1.10 on 2016-11-16 20:54 | |
3 | 3 | from __future__ import unicode_literals |
4 | 4 | |
5 | +from django.conf import settings | |
5 | 6 | from django.db import migrations, models |
6 | 7 | import django.db.models.deletion |
7 | 8 | |
... | ... | @@ -11,6 +12,7 @@ class Migration(migrations.Migration): |
11 | 12 | initial = True |
12 | 13 | |
13 | 14 | dependencies = [ |
15 | + migrations.swappable_dependency(settings.AUTH_USER_MODEL), | |
14 | 16 | ('courses', '0001_initial'), |
15 | 17 | ] |
16 | 18 | |
... | ... | @@ -36,6 +38,8 @@ class Migration(migrations.Migration): |
36 | 38 | ('message', models.TextField(verbose_name='Post message')), |
37 | 39 | ('modification_date', models.DateTimeField(auto_now=True, verbose_name='Modification Date')), |
38 | 40 | ('post_date', models.DateTimeField(auto_now_add=True, verbose_name='Post Date')), |
41 | + ('forum', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='forum.Forum', verbose_name='Forum')), | |
42 | + ('user', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL, verbose_name='Autor')), | |
39 | 43 | ], |
40 | 44 | options={ |
41 | 45 | 'verbose_name': 'Post', |
... | ... | @@ -50,6 +54,7 @@ class Migration(migrations.Migration): |
50 | 54 | ('modification_date', models.DateTimeField(auto_now=True, verbose_name='Modification Date')), |
51 | 55 | ('answer_date', models.DateTimeField(auto_now_add=True, verbose_name='Answer Date')), |
52 | 56 | ('post', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='forum.Post', verbose_name='Post')), |
57 | + ('user', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL, verbose_name='Autor')), | |
53 | 58 | ], |
54 | 59 | options={ |
55 | 60 | 'verbose_name': 'Post Answer', | ... | ... |
forum/migrations/0002_auto_20161115_1936.py
... | ... | @@ -1,35 +0,0 @@ |
1 | -# -*- coding: utf-8 -*- | |
2 | -# Generated by Django 1.10 on 2016-11-15 22:36 | |
3 | -from __future__ import unicode_literals | |
4 | - | |
5 | -from django.conf import settings | |
6 | -from django.db import migrations, models | |
7 | -import django.db.models.deletion | |
8 | - | |
9 | - | |
10 | -class Migration(migrations.Migration): | |
11 | - | |
12 | - initial = True | |
13 | - | |
14 | - dependencies = [ | |
15 | - ('forum', '0001_initial'), | |
16 | - migrations.swappable_dependency(settings.AUTH_USER_MODEL), | |
17 | - ] | |
18 | - | |
19 | - operations = [ | |
20 | - migrations.AddField( | |
21 | - model_name='postanswer', | |
22 | - name='user', | |
23 | - field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL, verbose_name='Autor'), | |
24 | - ), | |
25 | - migrations.AddField( | |
26 | - model_name='post', | |
27 | - name='forum', | |
28 | - field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='forum.Forum', verbose_name='Forum'), | |
29 | - ), | |
30 | - migrations.AddField( | |
31 | - model_name='post', | |
32 | - name='user', | |
33 | - field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL, verbose_name='Autor'), | |
34 | - ), | |
35 | - ] |
links/migrations/0001_initial.py
poll/migrations/0001_initial.py
1 | 1 | # -*- coding: utf-8 -*- |
2 | -# Generated by Django 1.10 on 2016-11-15 22:36 | |
2 | +# Generated by Django 1.10 on 2016-11-16 20:54 | |
3 | 3 | from __future__ import unicode_literals |
4 | 4 | |
5 | +from django.conf import settings | |
5 | 6 | from django.db import migrations, models |
6 | 7 | import django.db.models.deletion |
7 | 8 | |
... | ... | @@ -11,6 +12,7 @@ class Migration(migrations.Migration): |
11 | 12 | initial = True |
12 | 13 | |
13 | 14 | dependencies = [ |
15 | + migrations.swappable_dependency(settings.AUTH_USER_MODEL), | |
14 | 16 | ('courses', '0001_initial'), |
15 | 17 | ] |
16 | 18 | |
... | ... | @@ -57,4 +59,14 @@ class Migration(migrations.Migration): |
57 | 59 | name='poll', |
58 | 60 | field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='answers_stundet', to='poll.Poll', verbose_name='Poll'), |
59 | 61 | ), |
62 | + migrations.AddField( | |
63 | + model_name='answersstudent', | |
64 | + name='student', | |
65 | + field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='answers_stundent', to=settings.AUTH_USER_MODEL, verbose_name='Student'), | |
66 | + ), | |
67 | + migrations.AddField( | |
68 | + model_name='answer', | |
69 | + name='poll', | |
70 | + field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='answers', to='poll.Poll', verbose_name='Answers'), | |
71 | + ), | |
60 | 72 | ] | ... | ... |
poll/migrations/0002_auto_20161115_1936.py
... | ... | @@ -1,30 +0,0 @@ |
1 | -# -*- coding: utf-8 -*- | |
2 | -# Generated by Django 1.10 on 2016-11-15 22:36 | |
3 | -from __future__ import unicode_literals | |
4 | - | |
5 | -from django.conf import settings | |
6 | -from django.db import migrations, models | |
7 | -import django.db.models.deletion | |
8 | - | |
9 | - | |
10 | -class Migration(migrations.Migration): | |
11 | - | |
12 | - initial = True | |
13 | - | |
14 | - dependencies = [ | |
15 | - migrations.swappable_dependency(settings.AUTH_USER_MODEL), | |
16 | - ('poll', '0001_initial'), | |
17 | - ] | |
18 | - | |
19 | - operations = [ | |
20 | - migrations.AddField( | |
21 | - model_name='answersstudent', | |
22 | - name='student', | |
23 | - field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='answers_stundent', to=settings.AUTH_USER_MODEL, verbose_name='Student'), | |
24 | - ), | |
25 | - migrations.AddField( | |
26 | - model_name='answer', | |
27 | - name='poll', | |
28 | - field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='answers', to='poll.Poll', verbose_name='Answers'), | |
29 | - ), | |
30 | - ] |
users/migrations/0001_initial.py
1 | 1 | # -*- coding: utf-8 -*- |
2 | -# Generated by Django 1.10 on 2016-11-15 22:36 | |
2 | +# Generated by Django 1.10 on 2016-11-16 20:54 | |
3 | 3 | from __future__ import unicode_literals |
4 | 4 | |
5 | 5 | import django.contrib.auth.models |
... | ... | @@ -30,14 +30,14 @@ class Migration(migrations.Migration): |
30 | 30 | ('city', models.CharField(blank=True, max_length=90, verbose_name='City')), |
31 | 31 | ('state', models.CharField(blank=True, max_length=30, verbose_name='State')), |
32 | 32 | ('gender', models.CharField(choices=[('M', 'Male'), ('F', 'Female')], max_length=1, verbose_name='Gender')), |
33 | - ('image', models.ImageField(blank=True, null=True, upload_to='users/', verbose_name='Image')), | |
34 | - ('birth_date', models.DateField(verbose_name='Birth Date')), | |
33 | + ('image', models.ImageField(blank=True, null=True, upload_to='users/', verbose_name='Photo')), | |
34 | + ('birth_date', models.DateField(null=True, verbose_name='Birth Date')), | |
35 | 35 | ('phone', models.CharField(blank=True, max_length=30, verbose_name='Phone')), |
36 | - ('cpf', models.CharField(max_length=15, verbose_name='Cpf')), | |
36 | + ('cpf', models.CharField(blank=True, max_length=15, null=True, verbose_name='CPF')), | |
37 | 37 | ('type_profile', models.IntegerField(blank=True, choices=[(1, 'Professor'), (2, 'Student')], default=2, null=True, verbose_name='Type')), |
38 | 38 | ('titration', models.CharField(blank=True, max_length=50, null=True, verbose_name='Titration')), |
39 | 39 | ('year_titration', models.CharField(blank=True, max_length=4, null=True, verbose_name='Year of titration')), |
40 | - ('institution', models.CharField(blank=True, max_length=50, null=True, verbose_name='Institution where he had titration')), | |
40 | + ('institution', models.CharField(blank=True, max_length=50, null=True, verbose_name='Institution')), | |
41 | 41 | ('curriculum', models.FileField(blank=True, null=True, upload_to='users/curriculum/', verbose_name='Curriculum')), |
42 | 42 | ('date_created', models.DateTimeField(auto_now_add=True, verbose_name='Create Date')), |
43 | 43 | ('is_staff', models.BooleanField(default=False, verbose_name='Administrador')), | ... | ... |
users/migrations/0002_auto_20161115_1941.py
... | ... | @@ -1,20 +0,0 @@ |
1 | -# -*- coding: utf-8 -*- | |
2 | -# Generated by Django 1.10 on 2016-11-15 22:41 | |
3 | -from __future__ import unicode_literals | |
4 | - | |
5 | -from django.db import migrations, models | |
6 | - | |
7 | - | |
8 | -class Migration(migrations.Migration): | |
9 | - | |
10 | - dependencies = [ | |
11 | - ('users', '0001_initial'), | |
12 | - ] | |
13 | - | |
14 | - operations = [ | |
15 | - migrations.AlterField( | |
16 | - model_name='user', | |
17 | - name='birth_date', | |
18 | - field=models.DateField(null=True, verbose_name='Birth Date'), | |
19 | - ), | |
20 | - ] |
users/migrations/0003_auto_20161115_2054.py
... | ... | @@ -1,30 +0,0 @@ |
1 | -# -*- coding: utf-8 -*- | |
2 | -# Generated by Django 1.10 on 2016-11-15 23:54 | |
3 | -from __future__ import unicode_literals | |
4 | - | |
5 | -from django.db import migrations, models | |
6 | - | |
7 | - | |
8 | -class Migration(migrations.Migration): | |
9 | - | |
10 | - dependencies = [ | |
11 | - ('users', '0002_auto_20161115_1941'), | |
12 | - ] | |
13 | - | |
14 | - operations = [ | |
15 | - migrations.AlterField( | |
16 | - model_name='user', | |
17 | - name='cpf', | |
18 | - field=models.CharField(blank=True, max_length=15, null=True, verbose_name='CPF'), | |
19 | - ), | |
20 | - migrations.AlterField( | |
21 | - model_name='user', | |
22 | - name='image', | |
23 | - field=models.ImageField(blank=True, null=True, upload_to='users/', verbose_name='Photo'), | |
24 | - ), | |
25 | - migrations.AlterField( | |
26 | - model_name='user', | |
27 | - name='institution', | |
28 | - field=models.CharField(blank=True, max_length=50, null=True, verbose_name='Institution'), | |
29 | - ), | |
30 | - ] |