我想快速建立一个API作为草稿,我发现Flask具有我想要的轻量级。在
然而,作为Flask的新手,我仍然不确定如何设计我的文件布局,使之变得漂亮和清晰,以便与多个贡献者一起工作,以便随着时间的推移充实API。在
所以到目前为止,我需要蓝图,包括我从其他模块的路线。那就像一个符咒。但现在让我们来处理棘手的部分。在
我们的数据库是这样设计的,即我们对几种语言使用相同的表。在
对API的访问将是针对每种语言的,因此将该语言用作参数是没有实际意义的,语言对于确定我们对哪些表执行操作非常重要。这是在每个请求的基础上完成的。在
基本上,我希望API看起来像这样:
/v1.0/<language-code>/entries
/v1.0/<language-code>/sentences
旁注:
条目的路由来自v1/entries/access.py
。
(我建议将api的实体打包到更好的文件结构方案中)
那么我如何确保我的视图(路由链接到的函数)知道请求了哪个language-code
。在
有没有一种很好的方法来实现它,让参数在应用程序中全局可用,或者我应该从请求的url中提取它?在
我也对黑客开放!:3个
//编辑: 我发现了这个:http://flask.pocoo.org/docs/0.10/patterns/urlprocessors/ 这是正确的,但是,提取语言代码并将其写入g,以后仍然需要我验证该语言是否可用。在
我想验证语言(必须给出)是否有效,如果没有返回错误。在
^{pr2}$因此,如果验证失败,则返回一个错误,如果没有失败,我可以在我所有的函数中假设lang代码存在于某处(可能在g
)并且是可访问的
您可以将
language_code
作为函数的参数。在不允许使用名称
language-code
,参数名应为有效的python变量名。在我不确定这是不是该走的路,但我偶然发现了
before_request
装饰器,它似乎在做我想要的:相关问题 更多 >
编程相关推荐