5.9 Creating Our Production Database with migrate
parent
fd4dcc2425
commit
a9bf5ed847
|
@ -389,4 +389,37 @@ def home_page(request):
|
||||||
return render(request=request,
|
return render(request=request,
|
||||||
template_name='home.html',
|
template_name='home.html',
|
||||||
context={'items': items}) # pass items into template using render
|
context={'items': items}) # pass items into template using render
|
||||||
|
```
|
||||||
|
|
||||||
|
## 5.9 Creating Our Production Database with migrate
|
||||||
|
|
||||||
|
If use FT `functional_tests.py` to verify, will return an error `no such table: lists_item`
|
||||||
|
|
||||||
|
Why? Because Django creates test database for unit tests, this database cannot be used by FT.
|
||||||
|
|
||||||
|
Migrate the database using `python manage.py migrate`
|
||||||
|
|
||||||
|
`functional_tests.py` Test Result:
|
||||||
|
|
||||||
|
```
|
||||||
|
AssertionError: '2: Use peacock feathers to make a fly' not found in ['1: Buy peacock feathers', '1: Use peacock feathers to make a fly']
|
||||||
|
```
|
||||||
|
|
||||||
|
* Problem: need to get list numbering right.
|
||||||
|
* Solution: using Django template tag, `forloop.counter` in template `home.html`
|
||||||
|
|
||||||
|
```html
|
||||||
|
<table id="id_list_table">
|
||||||
|
{% for item in items %}
|
||||||
|
<tr><td>{{ forloop.counter }}: {{ item.text }}</td></tr>
|
||||||
|
{% endfor %}
|
||||||
|
</table>
|
||||||
|
```
|
||||||
|
|
||||||
|
* Remaining problem: database are polluted by items from previous FT round.
|
||||||
|
* ANS: Find a automated way of clear database after each FT
|
||||||
|
|
||||||
|
```
|
||||||
|
rm db.sqlite3
|
||||||
|
python manage.py migrate --noinput
|
||||||
```
|
```
|
Loading…
Reference in New Issue