我正在尝试部署一个网站,我需要使用不同的应用程序。网站是一个页面,元素会发生变化,你可以看到不同的页面。但问题是,因为我使用不同的应用程序,Django需要url来调用views.py函数,我不希望每个应用程序都有单独的url。我希望有一个模板,接收来自不同应用程序的所有views.py变量并显示它们。模型已经注册。
Directory:
models.py:
class AboutpageText(models.Model):
aboutText = models.TextField()
class Icons(models.Model):
iconName = models.CharField(max_length=255)
def __str__(self):
return self.iconName
class ServiceItems(models.Model):
serviceIcon = models.CharField(max_length=255)
serviceName = models.CharField(max_length=255)
serviceText = models.TextField()
def __str__(self):
return self.serviceName
views.py:
def aboutpage(request):
aboutpageText = AboutpageText.objects.all()
icons = Icons.objects.all()
serviceItems = ServiceItems.objects.all()
return render(request, "index.html", context={"aboutpageTexts": aboutpageText, "serviceItems": serviceItems, "icons": icons})
关于页面_应用程序urls.py:
urlpatterns = [
path('', views.aboutpage)
] + static(settings.STATIC_URL, document_root=settings.STATIC_ROOT)
网页(模板):
{% for aboutpageText in aboutpageTexts %}
<strong>{{ aboutpageText.aboutText }}</strong>
{% endfor %}
这些值不会传递到index.html
我试图在主目录中有一个名为www.example.com的视图文件mainView.py(manage.py所在的目录),并将应用程序视图文件中的所有值传递到此文件,然后将变量发送到模板,但也不起作用。
1条答案
按热度按时间u2nhd7ah1#
我相信你可以使用 AJAX 来实现这一点。
我的意思是有相同路径的不同URL,你可以为它们指定一个名称,这样你就可以找到它们,只需使用 AJAX 请求我来学习如何使用ajax https://www.tutorialspoint.com/django/django_ajax.htmhttps://www.geeksforgeeks.org/handling-ajax-request-in-django/的Django