替代Django的ClassBasedView。

django-yacbv的Python项目详细描述


django又一个基于类的视图

Django Yacbv(YetanotherClassBasedView)是Django的CBV的替代品 (django.views.generic.view)。

  • django的视图只能分派对应于request.method的内容。 但是在很多情况下,它应该考虑更多的事情,比如请求参数。
  • Django的代码是不灵活的,很难记住它的API。 很难理解继承。
  • django的视图不能删除decorators,这是测试所必需的。 它迫使我们用decorators测试视图,总是会妨碍 纯单元测试。

作为这些解决方案,django yacbv发布了。

yacbv很简单

django yACBV提供了简单的基于类的视图,允许用户创建更灵活的 发送,如下:

fromyacbvimportView,view_configclassTopView(View):@view_config(method='get',param='flip',template_name='top2.html')defflipped(self,request):return{'word':request.GET['flip']}@view_config(method='get',template_name='top.html')defget(self,request):return{'word':'world'}

请注意:

  • 只有当请求对象包含flip参数时,才会调度flip方法。
  • 每个视图的模板可以指定为视图配置的模板名参数。
  • 这些返回的字典将用作模板的上下文。

现在,django yacbv只是pre-alpha库,不用于生产。 如果您喜欢这个包,请从Github查看!

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java http响应未定义   java在单个数组中添加浮点值和字符串值,并使用它们进行写入。CSV文件   映射中的java重复列引发实体异常,但没有重复列   java为什么是线程。stop()方法不安全吗?   如何在java中从trycatch块返回数组?   java如何使用多个线程作为客户端,每个线程都在switch语句中执行一项任务   Android GridView上的java滚动位置跳转   java丰富:listShuttle格式   Java中的macos评测本机方法奇怪的结果   这个Java程序需要是两个独立的文件吗   无法使用selenium Java或JavascriptExecutor发送密钥/单击   java如何配置Jetty在类更改时重新加载WebAppContext   java我不能发布com。安卓截击服务器错误   java如何在使用addOnScrollListener时显示滚动条   java如何避免数据模型贫乏?存储库可以注入实体吗?   没有集合的java选择排序。在ArrayList中排序   macos在MacOSX上升级JDK   java如何使用jpa模板编写查询