2013-05-15 39 views
0

我正在玩Google Course Builder。 它使用Google App Engine和webapp2框架构建而成。webapp2中的路由

我对webapp2和路由不是很熟悉,我认为这是我怀疑的原因。也许以前从事GCB工作的人可以回答这个问题。

我正在编辑视图(如在MVC中)。这是一个HTML文件。我创建了一个超链接到另一个视图(这是我自己创建的一个HTML文件),但是当我点击链接时,我得到了一个404。

我尝试了文件位置的所有可能的变化。

href="views/doubts.html" 

会打开“localhost:8080/views/doubts.html”。但它给了我一个404甚至认为他的档案存在。 我试过所有的变化(“/ views/doubts”,只是“doubts.html”,“疑惑”等)。

也许直接访问视图可能会被应用程序的其他部分阻止。在这种情况下,最好的办法是什么?我是否必须创建一个重定向的控制器?我以前从未使用过MVC。

+0

您使用的模板引擎来承载无触摸一个简单的静态网站?你如何渲染最初的HTML文件?假设您使用某种模板引擎来呈现html文件,我将回答这个问题。编辑:我不能回答这个没有一些更多的信息。 – rGil

回答

0

首先检查app.yamlapp.yaml决定如何使用gogole app引擎响应每种请求。 https://developers.google.com/appengine/docs/python/config/appconfig

基本上有两种方式谷歌应用程序引擎用于响应请求。通过静态文件 https://developers.google.com/appengine/docs/python/config/appconfig#Static_File_Handlers

静态文件

  1. 响应是文件被直接提供给用户,用于一个给定的URL ,例如图像,CSS样式表或JavaScript源文件。 静态文件处理程序描述应用程序目录 中的哪些文件是静态文件,以及哪些URL用于它们。

2。通过脚本 https://developers.google.com/appengine/docs/python/config/appconfig#Script_Handlers

响应的脚本处理程序执行Python脚本来处理 的URL模式匹配请求。映射定义了一个匹配的URL模式, 和要执行的脚本。在Python 2.5中,CGI是首选的定义脚本处理程序的方法 。在Python 2.7中,WSGI是 首选方法。 CGI使用Python 2.7,但运行时 的某些功能(例如并发请求)仅在您的应用程序 使用WSGI时可用。

的1)方法允许用户webapp2url routing

+0

谢谢。我去了第二个选项,并为请求分配了一个处理程序。 – user2385089