Personal tools
You are here: Home にっき Plone4以前でもメールアドレスをIDにしたい
Document Actions

Plone4以前でもメールアドレスをIDにしたい

by jack(moblog) posted at 2009-12-11 05:40 PM

Plone.jpのTips アドベントカレンダー企画が、本多さんよりまわってきました。
ほんのコネタですがこれでいいかしらん?

Plone4では、メールアドレスをIDにできるようになるそうですが、それ以前のPloneでもメアド=IDとしたいことは多いはずです。

しかし、標準ではごらんの通り、メールアドレスをIDにしようとするとエラーとなってしまいます。

これは、Ploneの内部、ZMI的にはPortal_registerationに当たるところで、'@'を含むIDを拒否するような設定になっているためです。

しかしながら、mixiを例に出すまでもなく、メールアドレスをIDとしておくメリットは結構あります。実在確認も容易ですし、ID忘れにも対応しやすいです。
もっとも、Ploneでは実在確認にメールを使うのはパスワードを管理者側で付与しない設定にしておけばいいだけですが…

プロダクトで、メールアドレスをIDにできるようにするものもあるようですが、カンタンなコピペでできますのでそれを紹介します。

ある意味あたりまえですが、そのPloneサイトのManager権限が必要です。

まずは、ZMIに行きます。

そして、portal_skins/custom へ移動します。

右上のドロップダウンからScript(Python)を選択し、Add を押します。

Python スクリプトの名前は、まぁ、なんでもいいです。
今回は 'enableMailID' 、と、結構ベタな名前にしてみます。
この名前は、他のものとカブらなければなんでもかまいません。

そして、以下の内容を入力します。

request = context.REQUEST
pr = context.portal_registration
pr.manage_editIDPattern('^[A-Za-z0-9][A-Za-z0-9_@.-]*$')
return 'ok'

そして、'test' タブをクリックすると、'ok' と表示されます。
書くだけでなく、一度実行する必要があります。
一度実行すればZopeを再起動するまで有効です。

つまり、再起動するたびに呼ばなければいけないのですが、それが面倒であれば、portal_skins/plone_prefs以下の適当な(たぶん、prefs_user_overviewがいいかな)をcustomizeしてこれを呼ぶようにするとか…どんどん邪道が激しくなりますけど(笑)

それでは次は、理不尽にデミオを乗りまわしてしまってその節はごめんなさい、嘉平さん、おねがいします。

The URL to Trackback this entry is:
http://ns.jk.to/Nikki/moblog2009-12-11-17-40/tbping
Add comment

You can add a comment by filling out the form below. Plain text formatting.

(Required)
« July 2010 »
Su Mo Tu We Th Fr Sa
        1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 31
Categories
仮想化 (17)
Python/Zope/Plone (9)
にっき (628)
鉄道 (2)
水泳 (5)
 
そちらのOSの時刻なので 正確性はあなた次第
 
こういう意味のないの好き
 
本をお勧め中
 
CDもお勧め中
のだめカンタービレ ベスト100
ドラマの演奏とは違います。でもこの感じでこの価格ならアリかと
 
消耗品や家電
 
よく使うサイト
社名ロゴ88×631
 
ぐぐってみる
 
誰が使うんだろう
 

Powered by Plone