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
Political Memory
django-representatives
Commits
2517fe20
Commit
2517fe20
authored
Jul 07, 2016
by
Nicolas Joyard
Browse files
Add chamber creation helper
parent
f2d3ba3e
Changes
1
Hide whitespace changes
Inline
Side-by-side
representatives/contrib/francedata/import_representatives.py
View file @
2517fe20
...
...
@@ -90,6 +90,18 @@ class GenericImporter(object):
return
(
instance
,
created
)
def
ensure_chambers
():
"""
Ensures chambers are created
"""
france
=
Country
.
objects
.
get
(
name
=
"France"
)
for
key
in
(
'AN'
,
'SEN'
):
variant
=
FranceDataVariants
[
key
]
Chamber
.
objects
.
get_or_create
(
name
=
variant
[
'chamber'
],
abbreviation
=
variant
[
'abbreviation'
],
country
=
france
)
class
FranceDataImporter
(
GenericImporter
):
url
=
'http://francedata.future/data/parlementaires.json'
...
...
@@ -99,9 +111,7 @@ class FranceDataImporter(GenericImporter):
def
__init__
(
self
,
variant
):
self
.
france
=
Country
.
objects
.
get
(
name
=
"France"
)
self
.
variant
=
FranceDataVariants
[
variant
]
self
.
chamber
,
_
=
Chamber
.
objects
.
get_or_create
(
name
=
self
.
variant
[
'chamber'
],
abbreviation
=
self
.
variant
[
'abbreviation'
],
country
=
self
.
france
)
self
.
chamber
=
Chamber
.
objects
.
get
(
name
=
self
.
variant
[
'chamber'
])
self
.
ch_constituency
,
_
=
Constituency
.
objects
.
get_or_create
(
name
=
self
.
variant
[
'chamber'
],
country
=
self
.
france
)
...
...
@@ -311,6 +321,8 @@ def main(stream=None):
if
not
apps
.
ready
:
django
.
setup
()
ensure_chambers
()
an_importer
=
FranceDataImporter
(
'AN'
)
GenericImporter
.
pre_import
(
an_importer
)
...
...
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