Skip to content
GitLab
Menu
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
7427179e
Commit
7427179e
authored
Sep 02, 2018
by
Florent Chehab
Browse files
prepared move to model_config
parent
ac56d059
Changes
33
Show whitespace changes
Inline
Side-by-side
backend/generate/templates/urls.tpl
View file @
7427179e
...
...
@@ -53,7 +53,7 @@ router.register(
urlpatterns += [url(r'^api/', include(router.urls))]
for model in ALL_MODELS:
if model.mode
ration_level
is None:
if model.mode
l_config
is None:
raise Exception("You forgot to set the moderation_level variable in the model {}".format(str(model)))
from backend.permissions import DEFAULT_VIEWSET_PERMISSIONS
...
...
backend/models/location/city.py
View file @
7427179e
...
...
@@ -2,11 +2,11 @@ from django.db import models
from
rest_framework
import
serializers
from
backend.models.location
import
Country
from
backend.models.my_model
import
MyModel
,
MyModelSerializer
,
MyModelVersionnedViewSet
from
backend.utils
import
get_mode
ration_level
,
get_viewset_permissions
from
backend.utils
import
get_mode
l_config
,
get_viewset_permissions
class
City
(
MyModel
):
mode
ration_level
=
get_moderation_level
(
"City"
)
mode
l_config
=
get_model_config
(
"City"
)
name
=
models
.
CharField
(
max_length
=
200
)
local_name
=
models
.
CharField
(
max_length
=
200
,
null
=
True
,
blank
=
True
)
...
...
backend/models/location/cityTaggedItem.py
View file @
7427179e
from
django.db
import
models
from
backend.models.tag
import
TaggedItem
,
TaggedItemSerializer
,
TaggedItemViewSet
from
backend.models.location
import
City
from
backend.utils
import
get_mode
ration_level
,
get_viewset_permissions
from
backend.utils
import
get_mode
l_config
,
get_viewset_permissions
class
CityTaggedItem
(
TaggedItem
):
mode
ration_level
=
get_moderation_level
(
"CityTaggedItem"
)
mode
l_config
=
get_model_config
(
"CityTaggedItem"
)
city
=
models
.
OneToOneField
(
City
,
on_delete
=
models
.
PROTECT
,
related_name
=
'city_items'
,
primary_key
=
True
)
...
...
backend/models/location/country.py
View file @
7427179e
from
django.db
import
models
from
backend.models.my_model
import
MyModel
,
MyModelSerializer
,
MyModelVersionnedViewSet
from
backend.utils
import
get_mode
ration_level
,
get_viewset_permissions
from
backend.utils
import
get_mode
l_config
,
get_viewset_permissions
# Data model based on : https://unstats.un.org/unsd/methodology/m49/overview/
class
Country
(
MyModel
):
mode
ration_level
=
get_moderation_level
(
"Country"
)
mode
l_config
=
get_model_config
(
"Country"
)
name
=
models
.
CharField
(
max_length
=
200
)
iso_alpha2_code
=
models
.
CharField
(
primary_key
=
True
,
max_length
=
2
)
...
...
backend/models/location/countryDri.py
View file @
7427179e
from
django.db
import
models
from
backend.models.location
import
Country
from
backend.models.module
import
DriRestrictedModule
,
DriRestrictedModuleSerializer
,
DriRestrictedModuleViewSet
from
backend.utils
import
get_mode
ration_level
,
get_viewset_permissions
from
backend.utils
import
get_mode
l_config
,
get_viewset_permissions
class
CountryDri
(
DriRestrictedModule
):
mode
ration_level
=
get_moderation_level
(
"CountryDri"
)
mode
l_config
=
get_model_config
(
"CountryDri"
)
country
=
models
.
ManyToManyField
(
Country
,
related_name
=
"country_dri"
)
...
...
backend/models/location/countryScholarship.py
View file @
7427179e
from
django.db
import
models
from
backend.models.location
import
Country
from
backend.models.module
import
Scholarship
,
ScholarshipSerializer
,
ScholarshipViewSet
from
backend.utils
import
get_mode
ration_level
,
get_viewset_permissions
from
backend.utils
import
get_mode
l_config
,
get_viewset_permissions
class
CountryScholarship
(
Scholarship
):
mode
ration_level
=
get_moderation_level
(
"CountryScholarship"
)
mode
l_config
=
get_model_config
(
"CountryScholarship"
)
country
=
models
.
ManyToManyField
(
Country
,
related_name
=
"country_scholarhip"
)
...
...
backend/models/location/countryTaggedItem.py
View file @
7427179e
from
django.db
import
models
from
backend.models.tag
import
TaggedItem
,
TaggedItemSerializer
,
TaggedItemViewSet
from
backend.models.location
import
Country
from
backend.utils
import
get_mode
ration_level
,
get_viewset_permissions
from
backend.utils
import
get_mode
l_config
,
get_viewset_permissions
class
CountryTaggedItem
(
TaggedItem
):
mode
ration_level
=
get_moderation_level
(
"CountryTaggedItem"
)
mode
l_config
=
get_model_config
(
"CountryTaggedItem"
)
country
=
models
.
OneToOneField
(
Country
,
on_delete
=
models
.
PROTECT
,
related_name
=
'country_items'
,
primary_key
=
True
)
...
...
backend/models/location/currency.py
View file @
7427179e
from
django.db
import
models
from
django.core.validators
import
MinValueValidator
from
backend.models.my_model
import
MyModel
,
MyModelSerializer
,
MyModelViewSet
from
backend.utils
import
get_mode
ration_level
,
get_viewset_permissions
from
backend.utils
import
get_mode
l_config
,
get_viewset_permissions
class
Currency
(
MyModel
):
mode
ration_level
=
get_moderation_level
(
"Currency"
)
mode
l_config
=
get_model_config
(
"Currency"
)
code
=
models
.
CharField
(
primary_key
=
True
,
max_length
=
3
)
name
=
models
.
CharField
(
max_length
=
100
)
...
...
backend/models/my_model/forTestingModeration.py
View file @
7427179e
...
...
@@ -2,14 +2,14 @@ from .myModel import MyModel
from
.myModelSerializer
import
MyModelSerializer
from
.myModelViewSet
import
MyModelViewSet
from
django.db
import
models
from
backend.utils
import
get_mode
ration_level
,
get_viewset_permissions
from
backend.utils
import
get_mode
l_config
,
get_viewset_permissions
class
ForTestingModeration
(
MyModel
):
"""
Simple model for testing purposes
"""
mode
ration_level
=
get_moderation_level
(
"ForTestingModeration"
)
mode
l_config
=
get_model_config
(
"ForTestingModeration"
)
aaa
=
models
.
CharField
(
max_length
=
100
)
...
...
backend/models/my_model/forTestingVersioning.py
View file @
7427179e
from
.myModelVersionned
import
MyModelVersionned
,
MyModelVersionnedSerializer
,
MyModelVersionnedViewSet
from
django.db
import
models
import
reversion
from
backend.utils
import
get_mode
ration_level
,
get_viewset_permissions
from
backend.utils
import
get_mode
l_config
,
get_viewset_permissions
@
reversion
.
register
()
...
...
@@ -9,7 +9,7 @@ class ForTestingVersioning(MyModelVersionned):
"""
Simple model for testing purposes
"""
mode
ration_level
=
get_moderation_level
(
"ForTestingVersioning"
)
mode
l_config
=
get_model_config
(
"ForTestingVersioning"
)
bbb
=
models
.
CharField
(
max_length
=
100
)
@
classmethod
...
...
backend/models/my_model/myModel.py
View file @
7427179e
...
...
@@ -24,4 +24,4 @@ class MyModel(models.Model):
class
Meta
:
abstract
=
True
mode
ration_level
=
None
mode
l_config
=
None
backend/models/my_model/myModelSerializer.py
View file @
7427179e
...
...
@@ -50,7 +50,7 @@ class MyModelSerializer(serializers.ModelSerializer):
model
=
MyModel
def
moderation_required
(
self
):
moderation_level
=
self
.
Meta
.
model
.
mode
ration_level
moderation_level
=
self
.
Meta
.
model
.
mode
l_config
user
=
self
.
get_user_in_request
()
if
moderation_level
==
0
:
...
...
backend/models/my_model/pendingModeration.py
View file @
7427179e
...
...
@@ -4,11 +4,11 @@ from django.contrib.contenttypes.models import ContentType
from
django.contrib.contenttypes.fields
import
GenericForeignKey
from
django.contrib.postgres.fields
import
JSONField
from
django.contrib.auth.models
import
User
from
backend.utils
import
get_viewset_permissions
,
get_mode
ration_level
from
backend.utils
import
get_viewset_permissions
,
get_mode
l_config
class
PendingModeration
(
models
.
Model
):
mode
ration_level
=
get_moderation_level
(
"PendingModeration"
)
mode
l_config
=
get_model_config
(
"PendingModeration"
)
content_type
=
models
.
ForeignKey
(
ContentType
,
on_delete
=
models
.
CASCADE
)
object_id
=
models
.
CharField
(
max_length
=
100
)
# 100 should be ok
...
...
backend/models/other_core/department.py
View file @
7427179e
from
django.db
import
models
from
backend.models.my_model
import
MyModel
,
MyModelSerializer
,
MyModelViewSet
from
backend.utils
import
get_mode
ration_level
,
get_viewset_permissions
from
backend.utils
import
get_mode
l_config
,
get_viewset_permissions
class
Department
(
MyModel
):
mode
ration_level
=
get_moderation_level
(
"Department"
)
mode
l_config
=
get_model_config
(
"Department"
)
code
=
models
.
CharField
(
primary_key
=
True
,
max_length
=
6
)
name
=
models
.
CharField
(
max_length
=
100
)
...
...
backend/models/other_core/offer.py
View file @
7427179e
...
...
@@ -2,11 +2,11 @@ from django.db import models
from
backend.models.university
import
University
from
backend.models.other_core
import
Semester
,
Specialty
from
backend.models.my_model
import
MyModel
,
MyModelSerializer
,
MyModelViewSet
from
backend.utils
import
get_mode
ration_level
,
get_viewset_permissions
from
backend.utils
import
get_mode
l_config
,
get_viewset_permissions
class
Offer
(
MyModel
):
mode
ration_level
=
get_moderation_level
(
"Offer"
)
mode
l_config
=
get_model_config
(
"Offer"
)
semester
=
models
.
ForeignKey
(
Semester
,
on_delete
=
models
.
PROTECT
)
university
=
models
.
ForeignKey
(
University
,
on_delete
=
models
.
PROTECT
)
...
...
backend/models/other_core/semester.py
View file @
7427179e
from
django.db
import
models
from
backend.models.my_model
import
MyModel
,
MyModelSerializer
,
MyModelViewSet
from
backend.utils
import
get_mode
ration_level
,
get_viewset_permissions
from
backend.utils
import
get_mode
l_config
,
get_viewset_permissions
class
Semester
(
MyModel
):
mode
ration_level
=
get_moderation_level
(
"Semester"
)
mode
l_config
=
get_model_config
(
"Semester"
)
code
=
models
.
CharField
(
primary_key
=
True
,
max_length
=
6
)
...
...
backend/models/other_core/specialty.py
View file @
7427179e
from
django.db
import
models
from
backend.models.other_core
import
Department
from
backend.models.my_model
import
MyModel
,
MyModelSerializer
,
MyModelViewSet
from
backend.utils
import
get_mode
ration_level
,
get_viewset_permissions
from
backend.utils
import
get_mode
l_config
,
get_viewset_permissions
class
Specialty
(
MyModel
):
mode
ration_level
=
get_moderation_level
(
"Specialty"
)
mode
l_config
=
get_model_config
(
"Specialty"
)
code
=
models
.
CharField
(
max_length
=
6
)
department
=
models
.
ForeignKey
(
Department
,
on_delete
=
models
.
PROTECT
)
name
=
models
.
CharField
(
max_length
=
100
)
...
...
backend/models/tag/tag.py
View file @
7427179e
from
django.db
import
models
from
backend.models.my_model
import
MyModel
,
MyModelSerializer
,
MyModelViewSet
from
django.contrib.postgres.fields
import
JSONField
from
backend.utils
import
get_viewset_permissions
,
get_mode
ration_level
from
backend.utils
import
get_viewset_permissions
,
get_mode
l_config
class
Tag
(
MyModel
):
"""
TODO description
"""
mode
ration_level
=
get_moderation_level
(
"Tag"
)
mode
l_config
=
get_model_config
(
"Tag"
)
name
=
models
.
CharField
(
max_length
=
100
,
unique
=
True
)
config
=
JSONField
(
blank
=
True
,
default
=
dict
)
...
...
backend/models/university/campus.py
View file @
7427179e
...
...
@@ -3,11 +3,11 @@ from backend.models.module import BasicModule, BasicModuleSerializer, BasicModul
from
backend.models.location
import
City
from
backend.models.university
import
University
from
django.core.validators
import
MinValueValidator
,
MaxValueValidator
from
backend.utils
import
get_mode
ration_level
,
get_viewset_permissions
from
backend.utils
import
get_mode
l_config
,
get_viewset_permissions
class
Campus
(
BasicModule
):
mode
ration_level
=
get_moderation_level
(
"Campus"
)
mode
l_config
=
get_model_config
(
"Campus"
)
is_main_campus
=
models
.
BooleanField
(
null
=
False
)
name
=
models
.
CharField
(
max_length
=
200
,
null
=
True
)
...
...
backend/models/university/campusTaggedItem.py
View file @
7427179e
from
django.db
import
models
from
backend.models.university
import
Campus
from
backend.models.tag
import
TaggedItem
,
TaggedItemSerializer
,
TaggedItemViewSet
from
backend.utils
import
get_mode
ration_level
,
get_viewset_permissions
from
backend.utils
import
get_mode
l_config
,
get_viewset_permissions
class
CampusTaggedItem
(
TaggedItem
):
mode
ration_level
=
get_moderation_level
(
"CampusTaggedItem"
)
mode
l_config
=
get_model_config
(
"CampusTaggedItem"
)
campus
=
models
.
OneToOneField
(
Campus
,
on_delete
=
models
.
PROTECT
,
related_name
=
'city_items'
,
primary_key
=
True
)
...
...
Prev
1
2
Next
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new file
.
Attach a 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