inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

남박사의 파이썬으로 실전 웹사이트 만들기

게시판만들기 - 글 리스트

문법 문의 - {% if datas.count() > 0 %}

301

MIKE.aeon

작성한 질문수 53

1

안녕하세요 남박사님.

list.html 에서 datas를 받고 화면표시하는 부분에서 아래 조건문로 개수를 확인하는 부분에 대해 문의 드립니다.

{% if datas.count() > 0 %}
 /* 화면표시 로직 */
{% else %}
  <h3>데이터가 없습니다~~</h3>
{% endif %}

if문의 datas.count()는 몽고디비에만 해당하는 문법인가요?

아래 리스트형 데이터(datas)를 화면에 표시하려고, data.count() 를 사용했더니, 문법 오류가 발생하여 datas|length 로 처리하였더니 오류 없이 처리되었습니다.

datas:  [{'name': '면도기'}, {'name': '가방'}, {'name': '원피스'}, {'name': '공기청정기'}]

{% if datas|length > 0 %}
  <h3>데이터가 있습니다</h3>
{% else %}
  <h3>데이터가 없습니다~~</h3>
{% endif %}

몽고의 리턴결과와 리스트형 데이터의 처리문법이 위에 표시한것처럼 다르게되는지 문의 드립니다. 

몽고결과의 데이터타입과 리스트형 데이터 타입이 달라서 처리방식이 다른지 답변부탁드립니다.

python

답변 1

0

남박사

count() 함수는 몽고DB 의 cursor 객체에서 지원하는 함수기 때문에 if datas.count() 를 사용할 수 있는건 파이썬 코드에서 몽고DB의 커서를 넘겼을때 사용가능합니다. cursor 는 한번 출력되면 재사용이 불가능합니다.

만약 커서객체가 아닌 리스트로 데이터를 넘겼을 경우에는 말씀하신것 처럼 datas|length 로 리스트의 길이를 알아 올 수 있습니다. 리스트는 페이지 내에서 언제든 재사용이 가능합니다.

iis 접속후 자동으로 로그인 창이 나오도록 설정이 기능한가요?

0

63

2

리스트 이동 시 창 에러 발생

0

73

1

배포후 회원 등록 후 로그인 에러...

0

72

2

내부 서버 오류

0

65

2

app.config["MONGO_URI"] = "mongodb://localhost:27017/pm_db"

0

53

2

DB 검색하면 데이터가 없습니다. 라고 나와요. 5시간을 찾아봐도 모르겠어서 문의드려봅니다.

0

44

1

몽고db studio3T를 깔았는데

0

56

2

flake8과 linter

0

72

3

500이 뜹니다.

0

57

2

첨부파일 삭제

0

66

2

검색기능 질문

0

61

2

google.py

0

66

2

Studio 3T에 DB insert가 되지 않는 문제를 해결하지 못하고 있습니다 ㅠ

0

81

3

혹시 전체 코드 공개되어 있나요?

0

95

1

join.html 의 form 태그값 을 member_join() 에서 처리못함.

0

102

1

google.py 몽고db 샘플데이터 만들기

0

99

2

flake8 설치 이후 명령팔레트에서 linter가 안보입니다.

0

236

2

파이썬으로 만들어서 웹호스팅에 올릴경우

0

303

1

현재 구글검색 무한스크롤변경 문의합니다

0

295

1

몽고디비아틀라스로 추가 공부해서 올립니다.

0

216

1

IIS 500.19에러

0

652

2

버전 문제도 수정했는데 결과가 안나옵니다.

0

255

1

데이터베이스 저장관련 질문입니다.

0

266

1

test가 생기지 않습니다.

0

501

3