Plone

カスタムコンテンツでフィールドを追加したり削除したりする書き方

カスタムコンテンツでこんな書き方できるの知らなかった.. schema['allowDiscussion'].schemata = 'default' schema.delField('description')schema["title"].widget=StringWidget( label = _(u"faq_question_label", default=u"Question"), description =…

LDAPUserFolder って手動で入れたっけ?

新しいPloneにプロダクトを入れてると ValueError: The property wysiwyg_editor does not exist とかいうエラー出てハマる.quick_installer から,LDAPUserFolder CMF Toolsを追加したら出るみたい. そもそもこれってここからインストールする必要あった…

Viewlet内でTest()は使えない

Plone2.5まではtest()をTAL内で多用していたけど, Viewletをカスタマイズしていて,<div tal:condition="ptyhon: test(hoge, true, false)">みたいに書くと NameError: name 'test' is not defined とか出る.Viewletではtest()は使えないので,下記のように書くと同じ意味になる. <div tal:condition="ptyhon: hoge and true or false">なんでこんな書き方になるんだ</div></div>…

Ploneが起動しなくなったけど治った

再起動してもプロセスは動いてるのに,CPUを占有したまま応答しなかった. ログにもでないし途方にくれたが, カスタムプロダクトの,browser/viewlets.py に誤りがあったもよう..はあっ・・

Ploneでcptファイルをコピーしてくるなら,cpt.metadataも一緒に

ログインしても No next action found for login_form.success.Plone とか出るようになった. ログインフォームをカスタマイズするときに, buildout-cache からlogin_form.cptをコピーしてきたのだが, login_form.cpt.metadata はいらないかと思って持って…

Zopeのログに吐かれるConflict Error

たまにZopeのログに吐かれるConflict Error,気になってたんだけど, 発生しても再試行してくれるので,安心らしい. よかった.http://zope.jp/documents/manual/zope-conf/zope2104conf # ディレクティブ: conflict-error-log-level # # 概要: # コンフリ…

Plone3.3.1 + plone.app.blob

Plone3.2.3の頃の書き方では上手くいかなかったので,下記のように書いた. [buildout] parts = zope2 instance extends = http://dist.plone.org/release/3.3.1/versions.cfg find-links = http://dist.plone.org/release/3.3.1 http://dist.plone.org/thir…

Plone3.3.1 + LDAP

python-ldapのインストールはbuildoutを使う. buildout.cfgには, eggs = : Products.PloneLDAP Products.LDAPMultiPlugins Products.LDAPUserFolderzcml = : Products.PloneLDAP Products.LDAPMultiPlugins Products.LDAPUserFolderと書くversion.cfg には…

PloneへのFTPはPASVモードで

アクティブだと以下のようなエラーが出る.ERROR ZServer unexpected disconnect on data xmit channel

buildout.cfg にzope.confの設定を書く

buildout.cfgで直接設定できないけど,zope.confに書きたい場合,以下のように書く. [instance] (...) zope-conf-additional = address 8021

unbound prefixエラー

configure.zcml を書いていて,下記のようなエラーがでたら,名前空間の不備が原因. 正しく名前空間を設定する.line 102.0, unbound prefix

ArchGenXMLでカスタムコンテンツタイプに独自ビューを設定する

ArgoUML で,コンテンツタイプクラスのTagged Valuesに default_view というタグを追加. 値は例えば,my_view にする.skins/xx_templates の下に my_view.pt を作成. my_view.pt はPloneにデフォであるdocument_view.ptとかをコピーしてもいい.

request変数のトレース

TAL上で以下を埋め込むと,request変数を表示できる. <p tal:replace="structure python: request"></p>

Eggで配布されているプロダクトのインストール

Products.Collage を入れようと,buildout.cfgに書いてみたが,配布元に接続できなかったので,DLして組み込んだ.Plone.orgのページは,古いバージョンしか置いてなくて,最新版は以下にある. http://pypi.python.org/pypi/Products.Collage/src フォルダ…

ArchGenXMLでイミフなエラー

ArchGenXMLを使ったプロダクトで↓のような変なメッセージがでたら,BadRequest: The id "-64--88-0-1-37df91ba:1233b216a1e:-8000:00000000000017AB" contains characters illegal in URLs.Workflowの設定で,Transionに名前をつけてないのが原因. プレビュ…

i18ndude をインストール

i18ndude をインストール.国際化のため,buildout.cfgにi18ndudeを追加. i18nのファイルも作ってくれる便利. [archgenxml] recipe = zc.recipe.egg:scripts eggs = archgenxml i18ndude

Plone3.2.3でArchGenXML2 を試す.

ここ参考 http://plone.org/documentation/manual/archgenxml2/referencemanual-all-pages専用のbuildoutを作ってArchGenXMLをインストール.ディレクトリ作って,$ mkdir archgenxml_buildout $ cd archgenxml_buildoutbuilout.cfg 作って,[buildout] part…

Plone3 便利なプロダクト

Clouseau Plone上でpythonプロンプトが使える.AJAX. 超便利.GloWorm AJAXなインスペクタだけど,その場でテンプレートを編集して保存できたりする.編集したテンプレはplone/portal_view_customizations の中に保存される.超便利2.collective.lineage P…

Plone3 のbuildout メモ(Collage)

Plone3で自由なレイアウトを一つのページで実現するContentPanelsはもう古い!Plone3ならCollageを使う!builout.cfgに↓を書く. [buildout] eggs= : : Products.Collage以上!

Plone3 のbuildout メモ(productdistros)

Zope2スタイルのプロダクトは,productdistrosディレクティブに, 下記のように書いておくと,parts/producutdistrosにプロダクトが展開される. [productdistros] recipe = plone.recipe.distros urls = http://plone.org/products/cachefu/releases/1.1/Ca…

Plone3でPDFなどのデータをDBではなくファイルシステムに保存する方法

Ploneに保存される全てのデータは,Data.fsという一つのデータベースファイルに保存される.しかし,PDFやWordファイルなどのサイズな大きなデータをData.fsに保存していると,どんどんData.fsが肥大化していくので,それらのファイルは別途ファイルシステム…

Plone3.2.3 で FileSystemStorage を buidout

Plone3.2.3 で FileSystemStorage を buidout参考 Added this to my buildout.cfg:[buildout] parts = ... fss ....[instance] ... eggs = ... iw.fsszcml = ... iw.fss iw.fss-meta[fss] recipe = iw.recipe.fss zope-instances = ${instance:location} sto…

Plone3 のbuildout

Unified Installer でPlone3.2.3をインストールした. とりあえずbuiloutを試してみる.buildout.cfgの下記をコメントアウト eggs= Plone Products.LinguaPlone Products.CacheSetup Products.Clouseau Products.Gloworm plone.reload LinguaPloneはそのまま…

PloneでLDAPとacl_usersで同じIDのメンバーが登録されていてはいけない

portal_role_manager でModule zope.tales.tales, line 696, in evaluate - URL: manage_roles - Line 53, Column 4 - Expression: - Names: : : AssertionErrorというエラーが出たら, LDAPとsource_users で同じIDのメンバーが登録されているのが原因. グ…

Plone+LDAP でZMIからはユーザ検索できるのに,Ploneの共有プロパティから検索できない

解決法: LDAPUserFolder の LDAPSchemaの設定で, Mapped to Name が fullname になるスキーマを複数登録しない (たぶん,fullname をキーに検索しに行っている.cn もしくは uid をfullnameに割り当てる)

easy_install がうまくいかないときの対策

$ sudo easy_install collective.captcha とやると Download error: (101, 'Network is unreachable') とエラー. $sudo su でルートになってから $ easy_install collective.captcha だといけた.たぶんプロキシの設定がまずい

Plone Error: root Exception while rendering an error message Traceback

Ploneのevent.log に以下のような出力が. 2009-xx-xxTxx:xx:xx ERROR root Exception while rendering an error message Traceback (most recent call last): File "/usr/local/Zope-2.9/lib/python/OFS/SimpleItem.py", line 223, in raise_st andardError…

Plone FTP用ファイルフォーマット

id: ページID title: ページタイトル excludeFromNav: False allowDiscussion: None subject: description: contributors: creators: admin effectiveDate: None expirationDate: None language: rights: creation_date: 2007/11/16 18:17:31.523 GMT+9 modi…

Safari(Google Chromeも)でPloneのCSSが読めない時は..

Safari(Google Chromeも)では,CSSの言語設定, @charset "UTF-8";などの手前に何かを書いちゃダメ.CSSを読み込んでくれない.Ploneは,複数のCSSを自動でマージするので,public.css とかにcharsetを書いているとハマる.

Plone3の新機能コンテンツルール

Plone2.5では,ワークフローが変わったときにメンバーメールを送るには,自作スクリプトをワークフローに登録しなくてはいけなかった. Plone3ではコンテンツルールという新機能で簡単に設定できる. Ploneのサイト管理画面で,コンテンツルールを追加. フ…