Skip to content
GitLab
Projects
Groups
Snippets
/
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
Menu
Open sidebar
Julien Jerphanion
Rex Dri
Commits
b740f2dd
Commit
b740f2dd
authored
Mar 10, 2019
by
Florent Chehab
Browse files
Merge branch 'quick_fix_to_models' into 'master'
Fixes
#60
Fixes
#61
Closes
#60
and
#61
See merge request
!64
parents
02a08975
c1cccf3e
Changes
9
Hide whitespace changes
Inline
Side-by-side
backend/backend_app/migrations/0004_auto_20190310_1151.py
0 → 100644
View file @
b740f2dd
# Generated by Django 2.1.7 on 2019-03-10 10:51
from
django.db
import
migrations
,
models
class
Migration
(
migrations
.
Migration
):
dependencies
=
[(
"backend_app"
,
"0003_auto_20180916_1624"
)]
operations
=
[
migrations
.
RemoveField
(
model_name
=
"semester"
,
name
=
"moderated_by"
),
migrations
.
RemoveField
(
model_name
=
"semester"
,
name
=
"updated_by"
),
migrations
.
RemoveField
(
model_name
=
"userdata"
,
name
=
"black_list"
),
migrations
.
AddField
(
model_name
=
"offer"
,
name
=
"year"
,
field
=
models
.
PositiveIntegerField
(
default
=
2018
),
),
migrations
.
AddField
(
model_name
=
"previousdeparture"
,
name
=
"year"
,
field
=
models
.
PositiveIntegerField
(
default
=
2018
),
),
migrations
.
AlterField
(
model_name
=
"offer"
,
name
=
"semester"
,
field
=
models
.
CharField
(
choices
=
[(
"a"
,
"autumn"
),
(
"p"
,
"spring"
)],
default
=
"a"
,
max_length
=
2
),
),
migrations
.
AlterField
(
model_name
=
"previousdeparture"
,
name
=
"semester"
,
field
=
models
.
CharField
(
choices
=
[(
"a"
,
"autumn"
),
(
"p"
,
"spring"
)],
default
=
"a"
,
max_length
=
2
),
),
migrations
.
AlterUniqueTogether
(
name
=
"offer"
,
unique_together
=
set
()),
migrations
.
DeleteModel
(
name
=
"Semester"
),
]
backend/backend_app/models/__init__.py
View file @
b740f2dd
SEMESTER_OPTIONS
=
((
"a"
,
"autumn"
),
(
"p"
,
"spring"
))
__all__
=
[
"SEMESTER_OPTION"
]
backend/backend_app/models/other_core/__init__.py
View file @
b740f2dd
from
.semester
import
Semester
,
SemesterViewSet
from
.department
import
Department
,
DepartmentViewSet
from
.specialty
import
Specialty
,
SpecialtyViewSet
from
.offer
import
Offer
,
OfferViewSet
__all__
=
[
"Semester"
,
"SemesterViewSet"
,
"Department"
,
"DepartmentViewSet"
,
"Specialty"
,
...
...
backend/backend_app/models/other_core/offer.py
View file @
b740f2dd
from
django.db
import
models
from
backend_app.models.university
import
University
from
backend_app.models.other_core
import
Semester
,
Specialty
from
backend_app.models.other_core
import
Specialty
from
backend_app.models.abstract.my_model
import
(
MyModel
,
MyModelSerializer
,
MyModelViewSet
,
)
from
backend_app.utils
import
get_model_config
,
get_viewset_permissions
from
backend_app.models
import
SEMESTER_OPTIONS
class
Offer
(
MyModel
):
model_config
=
get_model_config
(
"Offer"
)
semester
=
models
.
ForeignKey
(
Semester
,
on_delete
=
models
.
PROTECT
)
university
=
models
.
ForeignKey
(
University
,
on_delete
=
models
.
PROTECT
)
year
=
models
.
PositiveIntegerField
(
default
=
2018
)
semester
=
models
.
CharField
(
max_length
=
2
,
choices
=
SEMESTER_OPTIONS
,
default
=
"a"
)
nb_seats_offered
=
models
.
PositiveIntegerField
()
# null => exchange not possible
...
...
@@ -21,9 +23,6 @@ class Offer(MyModel):
specialties
=
models
.
ManyToManyField
(
Specialty
,
related_name
=
"has_seats_at_univ"
)
class
Meta
:
unique_together
=
(
"semester"
,
"university"
)
class
OfferSerializer
(
MyModelSerializer
):
class
Meta
:
...
...
backend/backend_app/models/other_core/semester.py
deleted
100644 → 0
View file @
02a08975
from
django.db
import
models
from
backend_app.models.abstract.my_model
import
(
MyModel
,
MyModelSerializer
,
MyModelViewSet
,
)
from
backend_app.utils
import
get_model_config
,
get_viewset_permissions
class
Semester
(
MyModel
):
model_config
=
get_model_config
(
"Semester"
)
code
=
models
.
CharField
(
primary_key
=
True
,
max_length
=
6
)
class
SemesterSerializer
(
MyModelSerializer
):
class
Meta
:
model
=
Semester
fields
=
"__all__"
class
SemesterViewSet
(
MyModelViewSet
):
permission_classes
=
get_viewset_permissions
(
"SemesterViewSet"
)
queryset
=
Semester
.
objects
.
all
()
# pylint: disable=E1101
serializer_class
=
SemesterSerializer
backend/backend_app/models/user/previousDeparture.py
View file @
b740f2dd
from
django.db
import
models
from
backend_app.models.other_core.specialty
import
Specialty
from
backend_app.models.other_core.semester
import
Semester
from
backend_app.models.university
import
University
from
django.contrib.auth.models
import
User
from
backend_app.fields
import
JSONField
...
...
@@ -10,17 +9,19 @@ from backend_app.models.abstract.my_model import (
MyModelViewSet
,
)
from
backend_app.utils
import
get_model_config
,
get_viewset_permissions
from
backend_app.models
import
SEMESTER_OPTIONS
class
PreviousDeparture
(
MyModel
):
model_config
=
get_model_config
(
"PreviousDeparture"
)
# This model should be filled with data from the ENT
semester
=
models
.
ForeignKey
(
Semester
,
on_delete
=
models
.
PROTECT
)
university
=
models
.
ForeignKey
(
University
,
on_delete
=
models
.
PROTECT
)
specialty
=
models
.
ForeignKey
(
Specialty
,
on_delete
=
models
.
PROTECT
)
user
=
models
.
ForeignKey
(
User
,
on_delete
=
models
.
CASCADE
,
null
=
True
)
# Useful to relink a departure with a user
Utc_departure_id
=
models
.
IntegerField
()
year
=
models
.
PositiveIntegerField
(
default
=
2018
)
semester
=
models
.
CharField
(
max_length
=
2
,
choices
=
SEMESTER_OPTIONS
,
default
=
"a"
)
is_anonymous
=
models
.
BooleanField
()
courses
=
JSONField
(
null
=
True
)
# Store data from ENT
...
...
backend/backend_app/models/user/userData.py
View file @
b740f2dd
from
django.contrib.auth.models
import
User
from
django.db
import
models
from
backend_app.fields
import
JSONField
from
backend_app.models.abstract.my_model
import
(
MyModel
,
MyModelSerializer
,
MyModelViewSet
,
)
from
backend_app.models.university
import
University
from
backend_app.permissions.__list_user_post_permission
import
(
list_user_post_permission
,
)
...
...
@@ -22,7 +20,6 @@ class UserData(MyModel):
contact_info
=
JSONField
(
default
=
dict
)
contact_info_is_public
=
models
.
BooleanField
(
default
=
False
)
config
=
JSONField
(
default
=
dict
)
black_list
=
models
.
ManyToManyField
(
University
,
related_name
=
"+"
,
blank
=
True
)
other_data
=
JSONField
(
default
=
dict
)
...
...
documentation/Makefile
View file @
b740f2dd
...
...
@@ -11,7 +11,7 @@ extract_django: init
>
generated/abstract.dot
../backend/manage.py
graph_models
backend_app
--disable-abstract-fields
-g
-I
\
Specialty,Offer,
Semester,
Department,University
\
Specialty,Offer,Department,University
\
>
generated/core.dot
../backend/manage.py
graph_models
backend_app
--disable-abstract-fields
-g
-I
\
...
...
@@ -23,7 +23,7 @@ extract_django: init
>
generated/location.dot
../backend/manage.py
graph_models
backend_app
--disable-abstract-fields
-g
-I
\
RecommendationsList,Recommendation,UserData,PreviousDeparture,PreviousDepartureFeedback,
Semester,
University,Sepcialty\
RecommendationsList,Recommendation,UserData,PreviousDeparture,PreviousDepartureFeedback,University,Sepcialty\
>
generated/user.dot
convert_to_svg
:
init
...
...
shared/api_config.yml
View file @
b740f2dd
...
...
@@ -115,13 +115,6 @@
moderation_level
:
2
viewset_permission
:
IsStaffOrReadOnly
-
model
:
Semester
viewset
:
SemesterViewSet
import_location
:
other_core
api_end_point
:
semesters
moderation_level
:
2
viewset_permission
:
IsStaffOrReadOnly
-
model
:
Offer
viewset
:
OfferViewSet
import_location
:
other_core
...
...
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment