---
# System prepended metadata

title: Django part2

---

# Django part2
## 前提
Django part1 を終えている

### Viewでデータベースからデータを取得する
データベースを取得する時は、以下のように書きます。  
`モデルクラス.objects.all()`  
今回の場合は`Memo.objects.all()`になります。
> 意味としては、`Memoモデルに紐付くオブジェクトを全て取る`という意味です。
> 全てじゃなくて、一部を取ることもできます。
> `memos = Memo.objects.filter(取得したい属性=なんとかかんとか)`
今回は`views.py`の`index関数`を下記のように修正します。

```python
def index(request):
    memos = Memo.objects.all()
    params = {
      'memos' : memos
      }
    return render(request, 'index.html', params)
```

#### さらに、Templatesを修正します
まず、管理者画面へアクセスし(第1章でやりました。)、何件か`Memoモデル`へ登録しておきましょう。
`Templates`の方で`memos`をループ処理します。
```
<html>
<body>
  {% for memo in memos %}
  <div>
    <p>{{ memo.content }}</p>
    <p>{{ memo.update_datetime|date:"Y/m/d H:m:s" }}</p>
  </div>
  {% endfor %}
</body>
</html>
```
上記を写経したらサーバーを立てて、`index`にアクセスしてみましょう。
`$ python manage.py runserver`
[http://127.0.0.1:8000](http://127.0.0.1:8000)
メモの内容(`content`として登録した内容)と登録日時が表示されたら成功です。
