본 과제는 Django를 이용해 주어진 요구조건을 만족하는 '실행 가능한 코드'를 작성할 수 있는 가를 테스트하기 위한 것으로 문제에 기입된 조건을 제외한 나머지 부분들(예: OS, DBMS 엔진 등)은 과제 수행자가 자율적으로 선택하여 진행합니다. (단 채점자가 코드를 실행하는 과정에서 오류가 발생할 수 있는 부분은 문서화 하여 README.md에 명시하여야 감점이 되지 않습니다.)
- Django Admin에서 관리자가 사용자 포인트를 적립, 사용할 수 있어야 합니다.
- 모든 유저의 포인트를 띄우는 페이지를 만드세요
- 포인트: delta의 합계
- 포인트 사용 횟수: delta가 0 미만인 것들의 개수 (포인트, 포인트 사용 횟수의 계산은 Django ORM을 이용하여 DBMS 내부에서 계산)
사용자 | 포인트 | 포인트 사용 횟수 |
---|---|---|
test1 | 200 | 0 |
test2 | 50 | 2 |
test3 | 140 | 1 |
test4 | 20 | 0 |
UserPointHistory
- created_at: 해당 History가 만들어진 datetime (Django Model 내부 기능을 이용할 것)
- user: 해당 사용자 (django.contrib.auth.model.User)
- delta: 포인트 변화량 (추가, 삭제 량) (ex: -10, +100)
- Many to Many 관계를 이용할 것
Table: Content
id | subject | type |
---|---|---|
7011 | 대기업 취업완성 3개월 종합반 | 종합반 |
7012 | 대기업 취업완성 6개월 환급반 | 환급반 |
7013 | 대기업 취업완성 6개월 종합반 | 종합반 |
Table: UserContent
id | username | real_name | content_id | profit |
---|---|---|---|---|
1157421 | user1 | 김유신 | 7011 | 115000 |
1157422 | user2 | 이순신 | 7011 | 115000 |
1157423 | user3 | 김수로 | 7012 | 210000 |
1157424 | user4 | 이도 | 7012 | 200000 |
1157425 | user5 | 정약용 | 7011 | 113000 |
github이나 bitbucket private 저장소를 활용하고 mc.park@specupad.com에 읽기 권한을 부여한 뒤에 이메일로 회신하여주시기 바랍니다.