Sfoglia il codice sorgente

Display all movies on home page

Benoît Hubert 7 anni fa
parent
commit
68cb98091c
3 ha cambiato i file con 21 aggiunte e 9 eliminazioni
  1. 10 8
      movies/templates/home.html
  2. 9 0
      movies/tests.py
  3. 2 1
      movies/views.py

+ 10 - 8
movies/templates/home.html

@@ -1,14 +1,16 @@
 <html>
   <title>MovieLib</title>
     <body>
-    	<h1>Your Movie list</h1>
-    	<form method="POST">
-    		<input name="movie-title" id="input-new-movie" placeholder="Enter a movie title" />
-    		{% csrf_token %}
-  		</form>
+      <h1>Your Movie list</h1>
+      <form method="POST">
+        <input name="movie-title" id="input-new-movie" placeholder="Enter a movie title" />
+        {% csrf_token %}
+      </form>
 
-    	<table id="movie-table">
-    		<tr><td>1: {{ new_movie_title }}</td></tr>
-    	</table>
+      <table id="movie-table">
+        {% for movie in movies %}
+          <tr><td>1: {{ movie.title }}</td></tr>
+        {% endfor %}
+      </table>
   </body>
 </html>

+ 9 - 0
movies/tests.py

@@ -35,6 +35,15 @@ class HomePageTest(TestCase):
         self.assertEqual(response.status_code, 302)
         self.assertEqual(response['location'], '/')
 
+    def test_displays_all_list_items(self):
+        Movie.objects.create(title='itemey 1')
+        Movie.objects.create(title='itemey 2')
+
+        response = self.client.get('/')
+
+        self.assertIn('itemey 1', response.content.decode())
+        self.assertIn('itemey 2', response.content.decode())
+
 class MovieModelTest(TestCase):
 
     def test_saving_and_retrieving_movies(self):

+ 2 - 1
movies/views.py

@@ -7,4 +7,5 @@ def home_page(request):
         Movie.objects.create(title=request.POST['movie-title'])
         return redirect('/')
 
-    return render(request, 'home.html')
+    movies = Movie.objects.all()
+    return render(request, 'home.html', {'movies': movies})