【问题标题】:Django and frontend. How not to use Django urls and templatesDjango 和前端。如何不使用 Django url 和模板
【发布时间】:2017-06-21 17:32:43
【问题描述】:

普通概念是使用urls.pyviews.py。所以你在urls.py 中为主页定义如下:

urlpatterns = [
    url(r'^', project.views.index),
]

这个在views.py:

def index(request):
    return render(request, 'index.html')

但我看到在urls.py 中没有用于主页和任何其他页面的任何网址的代码。

我可以意识到,可以使用这个现代框架及其路由模块来完成进一步的路由。 但我不知道入口点在哪里,上面写着:“Take this main Html page for this route”。

这是一个非常有趣的方法,所以我也想实现它,但我什至不知道如何找到合适的词来找到任何材料以实现这一点。

【问题讨论】:

  • 你能提供你看到的代码吗? AFAIK 没有办法在不使用中间视图的情况下将 html 模板直接绑定到 url。
  • 很遗憾没有,内部项目
  • 你有没有看到一个烧瓶项目,也许?或者使用Werkzeug routing的东西?
  • @Withnail 不,那是 Django 项目。单页应用程序,如答案中提到的zubhav。

标签: django frontend


【解决方案1】:

您说的是单页应用吗?可能将 Django REST 框架与 Angular 和 React 等前端框架一起使用。您只需为单个页面声明一个 URL,然后让前端处理路由。

var app = angular.module("myApp", ["ngRoute"]);
app.config(function($routeProvider) {
    $routeProvider
    .when("/", {
        templateUrl : "main.htm"
    })
    .when("/red", {
        templateUrl : "red.htm"
    })
    .when("/green", {
        templateUrl : "green.htm"
    })
    .when("/blue", {
        templateUrl : "blue.htm"
    });
});

【讨论】:

  • 是的,单页应用,这就是我要找的。我应该用 Django views.pyurls.py 声明这个入口页面吗?或者还有其他方法可以做到这一点?
  • 是的,我会这样声明入口页面!只需创建一个 index.html 并将其链接到视图!
猜你喜欢
  • 2013-05-12
  • 2017-04-01
  • 1970-01-01
  • 2012-01-20
  • 1970-01-01
  • 1970-01-01
  • 2014-04-23
  • 2011-05-17
  • 1970-01-01
相关资源
最近更新 更多