djangoでid毎にテンプレートを表示したい
ここに質問の内容を詳しく書いてください。
(例)djangoでid毎にカロリー管理をするアプリを作っています。
id毎に表示するテンプレートのページを変えたいです
【ex.】id=1ならid:1の値でテンプレートを表示
全体像
calculation/
---statiic(css&Bootstrapが入っています)
---templates/
------calculation/
-----------log.html
-----------calculating.html
---models.py
---urls.py
---view.py
mysite/
---urls.py
manage.py
該当のソースコード
calculation/log.html
<div id="app" class="w-100 h-100 m-auto"> <h1 class="text-center pt-3 pb-3 mb-3 text-white" id="title">Calculated List</h1> {% for item in lists %} <div class="w-100 h-100 position-relative"> <div id="logArea" class="h-100 position-absolute"> <a href="% url 'calculation:calc' %" class="h3 font-weight-normal"> <p class="mb-5">{{ item.name }}</p> </a> <p class="h5 font-weight-normal" id="text-zone"> {{ item.enthusiasm }}</p> </div> </div> {% endfor %}
calculation/models.py
from django.conf import settings from django.db import models class BasicInfo(models.Model): name = models.CharField(max_length=100) height = models.CharField(max_length=3) weight = models.CharField(max_length=3) age = models.CharField(max_length=3) enthusiasm = models.TextField(max_length=200) def __str__(self): return self.name
calculation/urls.py
from django.conf.urls import url from . import views from django.urls import path app_name = 'calculation' urlpatterns = [ path('', views.UserLogs.as_view(), name='userLogs'), path('<int:id>', views.CalcView.as_view(), name='calc'), ]
calculation/view.py
from django.shortcuts import get_object_or_404, render from calculation.models import BasicInfo from django.views import generic from django.http import HttpResponse class UserLogs(generic.ListView): model = BasicInfo template_name = 'calculation/log.html' context_object_name = 'lists' class CalcView(generic.ListView): model = BasicInfo context_object_name = 'lists' template_name = 'calculation/calculating.html'
試したこと
・検索エンジンでdjangoのページ遷移について調べた。
・pkや例外処理についても調べたが、関連があるかよくわからなかった。
補足情報(FW/ツールのバージョンなど)
python 3.85
django 3.1
vscode
ここにより詳細な情報を記載してください。
フロントばかりやっていたため、バックエンド初心者です。よろしくおねがいします。
また、ユーザー管理に向いている言語があればお伺いしたいです。
あなたの回答
tips
プレビュー