小编bry*_*yan的帖子

Django:如何从模板中识别调用视图?

精简版:

是否有一种简单的内置方法来识别Django模板中的调用视图,而不传递额外的上下文变量?

长(原版)版:

我的一个Django应用程序有几个不同的视图,每个视图都有自己的命名URL模式,它们都呈现相同的模板.有一小部分模板代码需要根据被调用的视图进行更改,太小而不值得为每个视图设置单独模板的开销,所以理想情况下我需要找到一种方法来识别模板中的调用视图.

我试着设置的意见,额外的上下文变量传递(如"VIEW_NAME")来识别主叫观点,我已经使用也尝试过{% ifequal request.path "/some/path/" %}比较,但这些方法都显得特别优雅.有没有更好的方法从模板中识别调用视图?有没有办法访问视图的名称或URL模式的名称?


更新1:关于评论这只是我误解MVC的一个例子,我理解MVC,但Django并不是一个真正的MVC框架.我相信我的应用程序设置的方法是用Django的采取对MVC一致:意见描述提出的数据,以及模板描述如何将数据呈现.我碰巧有许多视图准备不同的数据,但都使用相同的模板,因为所有视图的数据呈现方式相同.我只是想找一种简单的方法来识别模板中的调用视图(如果存在的话).

更新2:感谢所有答案.我认为这个问题正在被推翻 - 正如我在原来的问题中所提到的,我已经考虑并尝试了所有建议的解决方案 - 所以我现在把它提炼成一个"短版本",现在问题的顶部.而现在似乎如果有人只是发布"否",它将是最正确的答案:)

更新3: Carl Meyer发布了"否":)再次感谢大家.

django

36
推荐指数
3
解决办法
2万
查看次数

如何在MacPorts中重置端口?

假设我想将端口重置为其初始状态,包括其配置文件.这可以通过以下方式实现:

sudo port uninstall portname
sudo port install portname
Run Code Online (Sandbox Code Playgroud)

(取消激活然后重新激活端口不会重置配置文件.)

有没有办法在不卸载和重新安装端口的情况下执行此操作,从而避免了重建包的开销?

编辑:感谢回复,Alexander和Nerdling.存档模式对我有用.

macports

5
推荐指数
1
解决办法
1664
查看次数

如何防止触发多个jQuery UI droppable?

我有一个jQuery UI可拖动和几个单独定义的droppables.由于配置了其中一个droppable tolerance: 'intersect',因此可以同时将多个dropppable拖放到drappable上.

什么是防止意外掉落射击的最佳方法?基本上,我想优先考虑droppables,以便在tolerance: 'intersect'触发另一个droppable时不会触发droppables.

更新 - 更多信息澄清事情:

  • tolerance: 'pointer'除了一类droppable之外,所有的droppable都被配置tolerance: 'intersect'.

  • 一类droppable的原因tolerance: 'intersect'是droppables真的很窄,用户在找到它们时遇到了问题tolerance: 'pointer'.

  • 将落差器进一步拆开不是一种选择.

  • 没有任何droppable重叠,但draggable足够大,可以与droppable重叠,tolerance: 'intersect'而鼠标指针在另一个droppable上tolerance: 'pointer'.通过这种方式,最多可以同时触发两个可放置的放置点.

  • UI被布局,因此tolerance: 'intersect'如果已经触发了另一个可放置,则可以通过忽略可放置来确定用户的意图; 即,如果用户将鼠标指针移到了一个可放置的上面,可以tolerance: 'pointer'安全地假设他/她打算将它放在那里.问题是,我无法弄清楚如何忽略不需要的droppable.

jquery jquery-ui droppable draggable

5
推荐指数
2
解决办法
2896
查看次数

标签 统计

django ×1

draggable ×1

droppable ×1

jquery ×1

jquery-ui ×1

macports ×1