uzh / ddm Goto Github PK
View Code? Open in Web Editor NEWData Donation Module: A Django application to setup and manage data donation projects.
Home Page: https://datadonation.uzh.ch
License: GNU General Public License v3.0
Data Donation Module: A Django application to setup and manage data donation projects.
Home Page: https://datadonation.uzh.ch
License: GNU General Public License v3.0
Provide researchers with download functionalities to retrieve and decrypt the data related to one of their projects.
Possibly provide small R- and Python-packages for this.
If you use DDM on a Django site together with wagtail (tested with v4.1) and you have internationalization enabled for your wagtail urls, we recommend to use the prefix_default_language=False
for the i18n_patterns:
urlpatterns += i18n_patterns(
path('', include(wagtail_urls)),
prefix_default_language=False
)
Not doing this will cause ddm.tests.test_apis.test_participant_deletion_with_regular_login to fail.
In practice, the participant API still seems to work properly despite the test failing, however, unexpected behaviour cannot be ruled out at this point.
All data stored in the database should be encrypted.
Encryption is handled on a project basis so only the researcher that owns a project will be able to decrypt the data associated with a project.
For this, a researcher must define a secret key on project creation.
Implement an understandable, easy-to-use user interface for researchers.
Implement an audit trale to secure reproducibility of a project.
Implement a reactive, easy-to-use upload form used by donators to upload and consent to the submsision of their data donations.
Should also include easily understandable error messages if something goes worng during UL (e.g. wrong file submitted, no entries within defined filter range) etc.
Define questionnaire flow consisting of a static and a varibale part.
Static part (part of every project):
Variable (can be independently designed for every project):
Implement a javascript parser function that can be configured by a researcher in the project admin panel.
Core configuration options include:
Additional configuration options include:
Implement a user structure consisting of different roles:
messages from the system are currently hardcoded, add i18n and l10n and add translations
Hello,
I try to set up the DDM and run into some issues. I am very much a newbie to this stuff (so far stayed happily within jupyter notebooks), so the issues might be just caused due to some mistake on my side. Therefore, Id be happy to get help to get the DDM up and running :).
When following the Documentation, everything is more or less smooth until "Apply Database Migrations".
For the urls.py
it is not specified that one has to add the following imports:
from django.urls import include, path
from django.contrib.auth import views as auth_views
The bigger issue seems to be caused by the settings.py & webpack_loader:
WEBPACK_LOADER
one has to insert into settings.py,
the import of 'os' is needed.import os
, a new error message complains that STATIC_ROOT
is not defined, which indeed it is not.STATIC_ROOT
in accordance with this link: STATIC_ROOT = os.path.join(BASE_DIR, "static")
python manage.py migrate
works out now.
When running python manage.py test ddm
, five Errors persist that all are seemingly connected to the WEBPACK_LOADER.
Due to length, I attached the terminal Output regarding the Errors as a txt: errors_ddm.txt
STATIC_ROOT
as os.path.join(BASE_DIR, "static")
I also tried out replacing it with BASE_DIR
directly - same Error messages in the test run.The solution might be evident for someone with Django experience - which I am lacking completely :).
Please let me know how to solve this.
Let me know if any other information is needed & thanks in advance :)
EDIT: figured the issues out by myself.
the project is currently hardcoded to CHTZ, set as default but make configurable
Implement informative statistics that inform researchers about the progress of their projects.
Statistics could include:
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.