728x90
- home.html에서 url 표현
<a href="{%url 'about' %}">About</a>
<form action="{%url 'result' %}">
<textarea cols="40" rows="10" name="fulltext"></textarea>
<br>
<input type="submit" value="Count!">
</form>
{%url 'name' %}
- result.html
<h1>텍스트는 {{total}} 로 구성되어 있습니다.</h1>
<a href="{%url 'home' %}">다시 home으로</a>
<br>
<h2> 입력한 텍스트 </h2>
{{full}}
<h2> 단어 카운트 </h2>
{% for word, count in dictionary %}
{{word}} : {{count}} <br>
{% endfor %}
{{total}}
{% for %}
{% endfor %}
- views.py
def result(request):
text = request.GET['fulltext']
words = text.split()
word_dictionary = {}
for word in words:
if word in word_dictionary:
word_dictionary[word] += 1
else:
word_dictionary[word] = 1
return render(request, 'result.html', {'full': text, 'total': len(words), 'dictionary': word_dictionary.items()})
- html의 name 가져오기
request.GET[form안의 name]
- 공백 기준으로 단어 나눠서 리스트로 반환
.split()
- 리스트 생성
listname = {}
- 변수 html에서 쓰고싶을 때
render(request, 'result.html', {'key': value}
사전형 객체?!
- list 길이
len(listname)
- list를 쌍으로 전달
.items()
html에서
dict_items([('gr', 1), ('f', 2)])
그냥
word_dictionary.items()가 아니라 word_dictionary로 전달하면
{'ㄴㅇㄹ': 1, 'ㅇㄴ': 1}
근데 이건 for문이 안돌아 그러니까 items()로 전달!
'Development > Django(멋쟁이사자처럼 7기 운영진)' 카테고리의 다른 글
[멋사7기] Django에 Css/Bootstrap 적용하기 (0) | 2019.01.17 |
---|---|
[멋사7기] vscode -> github에 올리기 (wordcount project) (0) | 2019.01.16 |
[멋사7기] 1.5주차 - MTV 패턴 (0) | 2019.01.10 |
[멋사7기] 1주차 - 2. Hello World 이론 / 3. Hello World 실습 (0) | 2019.01.09 |
[멋사7기] 1주차 - 1. 기본환경 셋팅 (0) | 2019.01.09 |