好的,那么让我先给你一个概述。我有这个网站,在它有一个表格部分。当您访问该部分时,您可以查看或启动新项目。每个项目有3-5种不同的形式。
我的问题是,我不希望观众必须浏览所有3-5页才能看到他们需要的相关信息。相反,我希望为每个项目提供一个主页,其中输入到表单中的所有基本数据都显示为不可编辑的数据。我希望这是有意义的。
因此,我需要找到一种方法来访问每个项目的不同表单中的所有数据,并将这些数据馈送到我将称为"Main“的新页面中。每个项目都会有一个单独的主页。
我几乎不知道该如何做,所以任何帮助都将不胜感激。
谢谢
发布于 2010-04-16 04:12:09
你可以试试this。在此之后,您可以:
django-admin如果你已经看到了这一切,那么:
首先,您应该为主页创建一个视图。因此,如果你有一个应用程序my_app,my_app/views.py应该是这样的:
def main_page_view(request, project_name):
# Your code here
pass然后,要使用它,您需要修改urls.py并添加如下内容:
(r'^projects/(?:<project_name>[a-zA-Z0-9]+)', 'my_app.views.main_page_view'),此外,您还需要模型,这些模型是通过对django.models.Model进行子类化在models.py中创建的
编辑:重读你的问题,我猜你需要this
发布于 2010-04-16 04:42:05
数据可以通过上下文从视图传递到模板。
所以假设你创建了一个摘要视图...
def summary(request, *args, **kwargs):
在该视图中,您可以使用模型api查询数据库,并将查询结果传递到模板中以进行呈现。我不确定你的模型是什么样子的,但是假设你有一个模型,它有一个标题和所有者(作为ForeignKey to user)……
class Project(models.Model):
title = models.CharField(max_length=250)
user = models.ForeignKey(User)你的模型显然会有所不同。在您的视图中,您可以查询属于当前用户的所有模型...
def summary(request, *args, **kwargs):
projects = Project.objects.filter(user=request.user)一旦收集到这些信息,就可以将查询传递给模板呈现系统……
def summary(request, *args, **kwargs):
projects = Project.objects.filter(user=request.user)
render_to_response('project_summary.html', {'projects': projects }, ... )当您将查询传递给模板时,您已经将其命名为projects。在模板中,您可以通过此名称访问它...
<body>
<table>
{% for project in projects %}
<tr><td>{{ project.title }}</td></tr>
{% endfor %}
</table>
</body>(还要注意如何从模板中访问模型的属性。)
https://stackoverflow.com/questions/2648567
复制相似问题