Django 와 SB Admin을 이용한 Yara GUI Interface 만들기(8)
- 공유 링크 만들기
- X
- 이메일
- 기타 앱
Django 와 SB Admin을 이용한 Yara GUI Interface 만들기(8)
1.DataTable 사용하기(2)
1). DB 필드 생성
sb_admin의 models.py에서 다음의 DB필드를 만듭니다.
그림1. DB필드 생성
해당 DB필드는 다음과 같음
[DB필드] RuleN:룰 이름 RuleG:룰 그룹 Hashmd:해시값 fileHash:파일헥사값 FileN:파일 이름 created_time:생성시간
Django에서 해당 DB데이터를 불러오면 다음과 같다.
django_sb_admin.objects.all() ==> django_sb_admin 테이블의 데이터를 전부 불러온다.
해당 내용을 views.py에 넣어두자.
그림2. views.py에서 db데이터 불러오기
위의 내용은 django_sb_admin 테이블의 데이터를 전부 불러오고 sbadmin에 저장한다. 해당 sbadmin은 yaraAnalysis가 불러오면은 해당 sbadmin을 django_sb_admin/YaraEventAnalysis.html에 보여줄수 있게 sbadmin을 보내준다.
render을 쓸때 (request, [템플릿], context) 으로 자주 쓰여진다. 이때 context부분이 있는데 이 context는 xml형태의 데이터 리스트를 html에 보내줄수 있다.
그러면 YaraEventAnalysis.html에는 어떻게 데이터가 들어가는지 알아보자.
아래 YaraEventAnalysis.html을 보면은 저번 테이블 부분을 아래 그림처럼 수정한다. thead부분만 남겨두고 tfoot 부분은 삭제한다. 그리고 tbody부분을 아래 그림처럼 {% for post in sbadmin %} 으로 변경하고 아래 그림처럼 변경한다.
해당 부분은 아까위의 sbadmin을 불러와서 post데이터에 집어 넣는다. 그리고 td부분에 post.id/post.RuleN/post.RuleG/post.Hashmd/post.FileN/post.created_time으로 변경한다.
이부분은 for을 사용하여 sbadmin 데이터를 반복하여 보여 줍니다.
for문은 끝날때 {% endfor %} 라고 쓰면 됩니다.
저번에도 이야기 했듯이 table class id가 dataTable로 되어 있기 때문에 데이터테이블하고 연동이 된다. 이점 참고하여 주길 바랍니다.
그림3.YaraEventAnalysis.html 수정
이제 해당 홈페이지에 YarEvent 메뉴에 접근시 아래 그림처럼 아무데이터가 없고 테이블명만 바뀐것을 확인할수 있다.
그림4. 초기 datatables 확인
이제 해당 부분을 파일업로드 하면 django에서 이 데이터 테이블을 보여줄수 있도록 커스텀 마이징을 할것이다.
from http://zerosin13.tistory.com/15 by ccl(A) rewrite - 2020-03-17 21:54:13
- 공유 링크 만들기
- X
- 이메일
- 기타 앱
댓글
댓글 쓰기