こんにちは、現在簡単なウェブアプリをDjangoで作成しています!!
今回は特にエラーというものではないのですが、少し疑問なところがあるのでご回答していただける方いましたらよろしくお願いします!!
urlpatternsで下から4つ目の第一引数にcreateという部分があるのですが、このままですとなぜPage Not Foundと出てしまいます。create/とするとエラーなく動いてくれます。
なぜ他のpathでは/を末尾に書かなくてもエラーが出ないのに、createのみcreate/としないといけないのでしょうか。
よろしくお願いします!!
#urls.py urlpatterns = [ path('login', CustomLoginView.as_view(), name='login'), path('logout', LogoutView.as_view(next_page='login'), name='logout'), path('register', RegisterPage.as_view(), name='register'), path('', views.foods, name='today_foods'), path('all_foods', FoodList.as_view(), name='all_foods'), path('target', TargetCreate.as_view(), name='target'), # path('', FoodList.as_view(), name='foods'), path('create', FoodCreate.as_view(), name='food-create'), path('update/<int:pk>', FoodUpdate.as_view(), name='food-update'), path('delete/<int:pk>', FoodDelete.as_view(), name='food-delete'), path('my_page', views.my_page, name='my_page'), ]
html
1{% extends 'base.html' %} 2 3{% block title %}|ホーム{% endblock %} 4{% block content %} 5 6<!-- header-bar --> 7<div class="header-bar"> 8 <div> 9 <h1>ようこそ、{{ request.user | title }}</h1> 10 <h3 style="margin: 0;"> 11 今日は{% now "F" %}{% now "j" %}日({% now "l" %}) 12 、合計カロリーは<span style="color: #333;">{{ttl_kcal}}</span>です! 13 </h3> 14 </div> 15 16 {% if request.user.is_authenticated %} 17 <a href="{% url 'logout' %}" class="logout"><i class="fas fa-sign-out-alt"></i>Logout</a> 18 {% else %} 19 <a href="{% url 'login' %}"><i class="fas fa-sign-in-alt"></i>Login</a> 20 {% endif %} 21</div> 22<!-- ///header-bar --> 23 24<div class="body-container"> 25 <!-- body-header-bar --> 26 <div class="body-header"> 27 <div class="body-header-title"> 28 <div class="body-header-left"> 29 <h1>今日食べたもの</h1> 30 <div class="links"> 31 <a href="{% url 'all_foods' %}">一覧</a> 32 <a href="{% url 'target' %}">目標設定</a> 33 <a href="{% url 'latest_blogs' %}">ブログ</a> 34 <a href="{% url 'my_page' %}">マイページ</a> 35 </div> 36 </div> 37 <div class="body-header-right"> 38 <a href="{% url 'food-create' %}"><i class="fas fa-plus"></i></a> 39 </div> 40 </div> 41 </div> 42 <!-- ///body-header-bar --> 43 44 <!-- table --> 45 <div class="food-items-wrapper"> 46 <table> 47 <tr class="table-header"> 48 <th class="align-left">食べもの</th> 49 <th>kcal</th> 50 <th>P</th> 51 <th>F</th> 52 <th>C</th> 53 <!-- <th>日付</th> --> 54 <th>カテゴリ</th> 55 </tr> 56 {% if user_foods %} 57 {% for food in user_breakfast_list %} 58 <tr> 59 <td class="align-left">{{ food.name }}</td> 60 <td>{{ food.kcal }}</td> 61 <td>{{ food.protein }}</td> 62 <td>{{ food.fat }}</td> 63 <td>{{ food.carb }}</td> 64 <!-- <td>{{ food.eaten_date }}</td> --> 65 <td>{{ food.category }}</td> 66 <td><a href="{% url 'food-update' food.id %}"><i class="far fa-edit"></i></a></td> 67 <td><a href="{% url 'food-delete' food.id %}"><i class="far fa-trash-alt"></i></a></td> 68 </tr> 69 {% endfor %} 70 71 {% for food in user_lunch_list %} 72 <tr> 73 <td class="align-left">{{ food.name }}</td> 74 <td>{{ food.kcal }}</td> 75 <td>{{ food.protein }}</td> 76 <td>{{ food.fat }}</td> 77 <td>{{ food.carb }}</td> 78 <!-- <td>{{ food.eaten_date }}</td> --> 79 <td>{{ food.category }}</td> 80 <td><a href="{% url 'food-update' food.id %}"><i class="far fa-edit"></i></a></td> 81 <td><a href="{% url 'food-delete' food.id %}"><i class="far fa-trash-alt"></i></a></td> 82 </tr> 83 {% endfor %} 84 85 {% for food in user_dinner_list %} 86 <tr> 87 <td class="align-left">{{ food.name }}</td> 88 <td>{{ food.kcal }}</td> 89 <td>{{ food.protein }}</td> 90 <td>{{ food.fat }}</td> 91 <td>{{ food.carb }}</td> 92 <!-- <td>{{ food.eaten_date }}</td> --> 93 <td>{{ food.category }}</td> 94 <td><a href="{% url 'food-update' food.id %}"><i class="far fa-edit"></i></a></td> 95 <td><a href="{% url 'food-delete' food.id %}"><i class="far fa-trash-alt"></i></a></td> 96 </tr> 97 {% endfor %} 98 99 {% for food in user_snack_list %} 100 <tr> 101 <td class="align-left">{{ food.name }}</td> 102 <td>{{ food.kcal }}</td> 103 <td>{{ food.protein }}</td> 104 <td>{{ food.fat }}</td> 105 <td>{{ food.carb }}</td> 106 <td>{{ food.category }}</td> 107 <td><a href="{% url 'food-update' food.id %}"><i class="far fa-edit"></i></a></td> 108 <td><a href="{% url 'food-delete' food.id %}"><i class="far fa-trash-alt"></i></a></td> 109 </tr> 110 {% endfor %} 111 112 <!-- {% for food in user_foods %} 113 <tr> 114 <td class="align-left">{{ food.name }}</td> 115 <td>{{ food.kcal }}</td> 116 <td>{{ food.protein }}</td> 117 <td>{{ food.fat }}</td> 118 <td>{{ food.carb }}</td> 119 <td>{{ food.eaten_date }}</td> 120 <td>{{ food.category }}</td> 121 <td><a href="{% url 'food-update' food.id %}"><i class="far fa-edit"></i></a></td> 122 <td><a href="{% url 'food-delete' food.id %}"><i class="far fa-trash-alt"></i></a></td> 123 </tr> 124 {% endfor %} --> 125 {% else %} 126 <td colspan="8" style="padding: 20px;">|今日はまだ何も食べていません。|</td> 127 {% endif %} 128 129 <!-- 合計と目標 --> 130 <tr> 131 <th class="align-left total">合計</th> 132 <th class="total">{{ ttl_kcal }}</th> 133 <th class="total">{{ ttl_protein }}</th> 134 <th class="total">{{ ttl_fat }}</th> 135 <th class="total">{{ ttl_carb }}</th> 136 </tr> 137 {% if target %} 138 <tr> 139 <th class="align-left">目標</th> 140 <th>{{ target.kcal }}</th> 141 <th>{{ target.protein }}</th> 142 <th>{{ target.fat }}</th> 143 <th>{{ target.carb }}</th> 144 </tr> 145 {% else %} 146 <tr> 147 <th class="align-left">目標</th> 148 <th>0</th> 149 <th>0</th> 150 <th>0</th> 151 <th>0</th> 152 </tr> 153 {% endif %} 154 </table> 155 </div> 156 <!-- ///table --> 157</div> 158 159 160<!-- {{ kcal.kcal__sum }} 161 {{ protein.protein__sum }} --> 162<!-- <p>目標は1960kcal, P130, F54.5, C237だよ</p> --> 163{% endblock %}
あなたの回答
tips
プレビュー