有没有办法在grok.CodeView类中标记可遍历的方法,就像使用Zope 3 BrowserView和allowed_attributesZCML配置指令一样?
我找到了文档,grok.traversable()但看起来这样的方法在五个grok包中不存在.
任何人都可以告诉我如何让TinyMCE停止将我的URL转换为Plone中的相关链接?
例如,如果我在HTML源代码中输入:
<img src="/images/dir/subdir/my_image.png" />
Run Code Online (Sandbox Code Playgroud)
它会将其转换为:
<img src="../../../my_image.png" />
Run Code Online (Sandbox Code Playgroud)
我编辑了tiny_mce.js(在portal_skins中)来设置:
convert_urls:false,
relative_urls:false,
Run Code Online (Sandbox Code Playgroud)
但没有效果.我在这里阅读了所有类似的帖子,但没有人真正回答这个问题.
如果用户通过浏览文件系统(即目录)来选择图像,那么它就可以了.我只是想让它尊重我在html框中键入的内容...这样我就可以选择强制一个绝对路径,如果我认为合适的话.这是kupu的标准行为.
有任何想法吗?
我有一个基类Person和派生类Manager和Employee.现在,我想知道的是创建的对象是Manager或者Employee.
该人的具体如下:
from Project.CMFCore.utils import getToolByName
schema = getattr(Person, 'schema', Schema(())).copy() + Schema((TextField('FirstName', required = True, widget = StringWidget(label='First Name', i18n_domain='project')), TextField('Last Name', required = True, widget = StringWidget(label='Last Name', i18n_domain='i5', label_msgid='label_pub_city'))
class Manager(BaseContent):
def get_name(self):
catalog = getToolByName(self, "portal_catalog")
people = catalog(portal_type='Person')
person={}
for object in people:
fname = object.firstName
lname = object.lastName
person['name'] = fname+' '+ lname
# if the derived class is Employee then i would like …Run Code Online (Sandbox Code Playgroud) 我正在尝试转储所有活动线程的列表,包括每个线程的当前堆栈.我可以使用threading.enumerate()获取所有线程的列表,但我无法找到从那里到达堆栈的方法.
背景:一个Zope/Plone应用程序不时出现问题,消耗100%的CPU并需要重新启动.我感觉这是一个没有正确终止的循环,但我无法在test-environemt中重现它以进行验证.我设法注册一个可以从外部触发的信号处理程序,所以我可以在情况再次发生时立即触发一些代码.如果我可以为所有活动线程转储堆栈跟踪,这将给我一个问题的线索.洞的东西在python 2.4上运行......
关于如何追踪这些情况的任何想法都值得赞赏:)
干杯,克里斯
我以Drupal为生,我喜欢这个系统.然而,我一直对Plone很感兴趣,并且想要广泛了解我对CMSes的广泛了解.我过去和Plone一起玩过,被它迷住了并且被它击退 - 取决于当天.
但是,我再次看到Plone的优点
然而令我感到惊讶的是,我找不到任何与观点相同的内容(http://drupal.org/project/views),而且分类法(即分类)不是一等公民.每个Plone产品似乎都采用自己的分类法.总而言之,虽然我喜欢它的极端和理想主义的方法,但总是让我感到震惊的是,一切都很难在其中完成.
我一直希望Plone能够成功,并且每隔几个月就会探索它的RSS源,但却只会沮丧.
我以为我会测试Plone 4. Plone 4中的新功能列表对我来说完全没什么吸引力(http://plone.org/products/plone/features).
Drupal 7新功能(http://drupalcode.org/viewvc/drupal/drupal/CHANGELOG.txt?revision=1.373&view=markup)和Wordpress 3(http://codex.wordpress.org/Version_3.0)似乎他们在新的主要版本中做了更多.
此外,通过Dexterity替换Archetypes(http://plone.org/products/dexterity/documentation/faq/how-is-dexterity-related-to-archetypes/view)也是向前迈出的一大步.因此,虽然Plone 4本身可能比3.x有所改进,但它是否足以让Plone在其他CMS中进行推算?
这让我想到了我的问题:
Plone是否会稳步下滑?Plone的未来是什么?我的评估是错误的,Plone没有按照其他顶级CMS的速度添加功能和功能吗?
这篇http://www.google.com/trends?q=plone似乎证实了我的担忧.
我应该试试Plone 4并将其作为我的"第二"CMS吗?
有没有任何standalonenish解决方案用于将国际unicode文本规范化为Python中的安全ID和文件名?
例如,转My International Text: åäö来my-international-text-aao
plone.i18n做很好的工作,但不幸的是它取决于zope.security和zope.publisher和其他一些包使得它十分脆弱的依赖.
我正在研究一种大量使用鸡蛋的Python程序(Plone).这意味着有198个目录充满了我可能想要在调试时搜索的Python代码.有没有一种很好的方法只搜索那些目录中的.py文件,避免不相关的代码和大型二进制文件?
看plone.org找到一种方法来定期打包我的实例的ZODB我只能找到http://plone.org/documentation/faq/how-do-i-pack-the-zodb,而不是谈论自动化包,但只是手动启动的.
我知道我可以使用wget或curl模拟手动包,但我想知道这是否是生产网站使用的最佳实践.
Plone项目包含192个不同的回购:https://github.com/plone/
在开发过程中,有时需要触摸2或4或10个不同的回购来修复错误或实现功能.这将是巨大的,如果这一切都可以一起分支和合并在一起(如拉要求关闭issueX含有承诺repo1,repo2和repo3).
版本要求将整个回购集合分支并标记在一起.
Pre-git,一个版本是由一个文件定义的,该文件列出了构成该版本的所有模块的svn版本号.git是否为我们提供了更简化的工作方式?
乍一看,似乎"超级项目"可能适用:
您可以更具体地定义项目与超级项目中的标记和分支之间的关系
http://progit.org/book/ch6-6.html#superprojects"Git /Submodules and Superprojects"似乎证实了这一点,但仍然含糊不清(不解决标签或分支).http://en.wikibooks.org/wiki/Git/Submodules_and_Superprojects
另一个听起来相关的工具是Joey Hess mr:
mr(1)命令可以在一组存储库上检出,更新或执行其他操作,就好像它们是一个组合存储库一样.
http://kitenet.net/~joey/code/mr/(我担心这会导致192个不同的分支碰巧具有相同的名称,而不是将所有回购链接在一起的1个分支.)
这个问题看起来很相关:有人真的使用git super/subprojects吗?一个答案说明:
我们的项目(bitweaver,一个内容管理系统)是一个高度模块化的系统,有近160个存储库 - http:// github.com/bitweaver/".
这听起来像我们的情况.它引用了子模块的"严重限制",并建议使用mercurial.这听起来mr可以帮助处理那些("对超级仓库中的所有目录执行git命令").