1

현재 연구자가 검토를 수행하는 데 사용할 웹 응용 프로그램을 디자인하고 있습니다. 이 애플리케이션에는 참가자와 관리자라는 두 그룹의 사용자가 있습니다.Django 응용 프로그램 구성

관리자 만 검토를 시작할 수 있으며 모든 사용자 또는 관리자에게 관리자 또는 스크리너로 검토에 참여하도록 지정할 수 있습니다. 각 리뷰의 일반적인 워크 플로는 다음과 같습니다.

  1. 의료 데이터베이스를 검색하고 수천 개의 참조를 가져옵니다.
  2. 제목을 기준으로 한 스크린 참조 (리뷰어/관리자 수 상영은 1 회 이상 가능). 각 검토자는 모든 참조를 검토합니다. 각 참조를 포함 또는 제외로 표시하십시오.
  3. 화면에 요약을 기반으로 한 참조가 포함되어 있습니다. 위와 동일합니다.
  4. 전체 텍스트를 PDF로 저장하고 포함 된 참조 용으로 저장하십시오.
  5. 화면에 전체 텍스트를 기반으로 한 참조가 포함되어 있습니다. 위와 동일합니다.
  6. 사용자 지정 양식을 만듭니다.
  7. 포함 된 참조에서 데이터를 추출합니다.
  8. 데이터 내보내기 모든 참조에 대한 검토 기계 학습의 진행 전반에 걸쳐

이 수행됩니다. 또한 검토 과정에서 포괄적 인 로깅이 필요합니다.

내 질문은 어떻게이 섹션을 장고 애플 리케이션으로 나눌 수 있고 필요한 데이터베이스를 어떻게 구성해야합니까?

잠정적으로, 나는 이러한 데이터베이스를하는 것에 대한 생각했습니다

  • 사용자를. 스크리너와 리뷰어에 관한 정보를 저장하고 tenner와 admin을 프로젝트합니다.
  • Project. 데이터 추출 양식을 포함하여 각 프로젝트에 대한 기본 정보를 저장합니다. 참조 테이블과의 일대 다 관계.
  • 참고 문헌. 포함 상태 및 데이터 추출을 포함하여 각 참조에 대한 정보를 저장합니다.

로깅을 어떻게 처리해야할지 모르겠다. 어떻게해야합니까?

이것은 합리적인 분할인가요? 그렇다면 어떻게 적절하게 단계를 앱으로 나눠야합니까?

+0

귀하의 질문에 대한 이해가되지 않습니다. 버전 관리로 세부 사항에? Django는 기본 로깅 https://docs.djangoproject.com/en/1.10/topics/logging/을 제공합니다. 하지만 버전 관리에 대한 질문이 뭐야? – rrmerugu

+0

@rrmerugu 사용자 활동 측면에서 로깅. 설정 변경, 참조 삭제 등 – scutnex

+0

. @scutnex 그래서 버전 관리에 대한 질문은 무엇입니까 – rrmerugu

답변

3

장고에 대한 가장 좋은 점은 manage.py startapp <myapp>으로 만드는 apps입니다. 앱을 사용하면 코드를 모듈화 할 수 있습니다. 코드를 모듈화 할 때 올바른 길을 걷고 있습니다.

테이블 사용자와 관련하여 프로젝트 및 참조는 사용자의 설명에서 합리적으로 들립니다.

내가 너라면, 애플 리케이션을 이런 식으로 구성 할 것이다.로깅 사용자 수정 프로젝트 수정 또는 삭제 등을 각각의 행위와 관련

apps/ 
    userprofile/ (users table) 
    project/ (projects and references tables) 
    activity/ (activity and notifications tables) 

는 post_ 또는 pre_ https://docs.djangoproject.com/en/1.10/topics/signals/ 신호로 포착 할 수있다. 활동을 작성하기 위해 사용자를 사용자로 지정하고 활동에 따라 단일 활동을 통지로 여러 사용자에게 공개 할 수 있습니다. 즉, 단일 활동은 이벤트의 참여자 인 여러 사용자에게 각 통지를 트리거합니다.

여기 https://djangopackages.org/grids/g/model-audit/에서 귀하의 요구 사항을 스위트 더 하나를 시도 데이터 버전에 대해서는

userprofile/   
    __init__ 
    views.py 
    tests.py 
    signals.py # write the post_save pre_save post_delete pre_delete logics here 
    managers.py # take full leverage of managers, and custom querysets 
    forms.py 
    models.py 
    urls.py 
    admin.py 
    tasks.py # for celery or tasks which will be used by queuing systems 
    apps.py 

: 각 응용 프로그램에서

나는 각각의 응용 프로그램 내에서 다음과 같은 구조를 사용하는 것을 선호