일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
- html
- table cell size
- html cell
- Django column 값 가져오기
- Dependency Injection
- Dependency
- Django 특정 값 가져오기
- Spring
- DI
- html cell size
- table tag
- Django
- Today
- Total
emluy 개발 일기
특허관점기업분석 - ajax로클릭 시 새로고침 안하고 DB에서 값 가져온 후 띄워주기 본문
0.
- jquery CDN 을 head태그에 추가
- $ pip install simplejson
-views.py 상단에 import json
1. Ajax 이용해서 클릭한 값을 views.py로 넘겨주기
2. 클릭한 값을 이용해서 model에 저장된 데이터 가져오기
3. views.py에서 보낸 데이터를 다시 template에 넘겨주기 (이때 return JsonResponse 사용함)
* HttpResponse의 subclass = JsonResponse
================================================================================
참고
*밑에 참고에서 참고한 것
- id 속성 값을 views.py에서 가져온 값으로 하는 법 id="{{views.py에서 넘겨준 딕셔너리value값}}"
chohyeonkeun.github.io/2019/06/12/190612-django-ajax-checkbox/
* 밑에 참고에서 참고한것
- 전체적인 ajax 흐름 잘 설명해놓음 그러나 코드가 오류 남
medium.com/@junekim_44613/django-스터디-4주차-배포-m-n-모델-ajax-다뤄보기-37ef3a66e446
* 밑에 참고에서 참고한것
- ajax로 data를 views.py에 전달한 후 그 데이터 이용해서 다른 칼럼의 값 response 해준 후 html파일에서 다시 띄울 때
-> success 와 error 작성하는 법 가져옴
likelion-kgu.tistory.com/category/Javascript/AJAX
* 밑에서 참고한 것
- div 태그에 사용자 지정 속성값 넣기 <div data-value="내가지정할 값">
http://www.nextree.co.kr/p10155/
오류나는 부분
1. 값 가져가서 model에 있는 데이터테이블에서 컬럼 값이 가져온 값과 같은 행의 다른 컬럼값 가져오는게 안됨
1-1. 오류원인 예측
- 값 가져온거 google 검사에서 Network의 response 보면 patent = '\n H01 \n' 이렇게 돼있음
- 터미널에도 가져온 값이 patent=%0A%02%02%02%02%02%02%02%02%H01%02%02%02%02%02%02%02%02 이럼
1-2. 생각해본 해결책
- div태그에 name속성을 지정해주고 script에서 $(this).attr('name') 으로 가져와보면 어떨까 -> name은 unique해야해서 중복되니까 못씀 ㅠㅠ
- div태그에 data- 속성을 이용해서 data-value속성을 만들고 값을 넣어주고 $(this).data('value') 이렇게 가져와보면?
이것이 해결책!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
헤매던 부분
1. views.py에서 값 가져와서 다시 html에 띄워줄 때
만약 views.py에서 보낸 값이 dictionary형태인 {'explain':explain} 일때
반드시 위에처럼 data['explain']과 같이 key값에 작은 따옴표 해줘야함 이거 때문에 안됐었음 매우 화났음
ajax로 요청후 views.py로 여러개 객체 가져와서 html에 띄워주기
ajax 두번
1. table 행을 동적 생성 할때 <td></td> 여러개 생성해준 뒤 여러개 생성된 td를 <tr></tr>로 감싸는 법 가져옴
https://araikuma.tistory.com/609
2. 여러개 객체를 html 로 JSON으로 넘겨줄 때, 평소 하던것처럼 ipc_detail = Patentdetail.objects.all().filter(patent=ipc) 이렇게 한 후 ipc_detail에 담긴 여러 객체들을 return에 딕셔너리로 넘겨주면 에러 뜸 => not json serializable 이라고 오류남
https://in0-pro.tistory.com/m/25?category=811477
'웹 개발 > project' 카테고리의 다른 글
python - Crawling 의류 데이터 크롤링 (0) | 2021.07.03 |
---|---|
Trip surfer - #1 Geodjango, PostGIS, googlemap 중 Trip surfer 구현 시 필요한 것 고르기 (0) | 2020.10.30 |
Trip surfer - # 0 Docker Django PostgreSQL (0) | 2020.10.13 |