お店住所録 typeの作成方法
以下の項目を編集可能とする。
名前 - ShopName?
住所 - ShopAddress?
#############
"root"-"Control_panel"-"Product"で"Add Product"
#############
ID:CMFShopAddress?
Generate
#############
"CMFShopAddress?"を選択、プルダウンで"Z Class"を追加
Id:ShopAddress?
Meta Type:ShopAddress?
"Base Classes"で"CMF Core:PortalContent?"と"CMFDefault:DefaultDublinCoreImpl"を選択してAdd
"Create constructor objects?"と"Include standard Zope persistent object base classes?"は選択したまま。
#############
"/Control_Panel/Products/CMFShopAddress?"で"Script(python)"で"addShopAddress"を追加
内容は
Parameter List:id
context.manage_addProduct['CMFShopAddress']?.ShopAddress?.createInObjectManager(id,container.REQUEST)
return id
#############
"ShopAddress?_factory"を選択し、"Permission"を"Add portal content"に変更
############# 属性を定義する
"/Control_Panel/Products/CMFShopAddress?/ShopAddress?/"を選択し、"Property Sheets"タブを選択
Addで
ID:ShopAddressPropertySheet?
とし、"Add"
"ShopAddressPropertySheet?"を選択し、
Valueは空のままで、
ID:ShopName?(String)
ID:ShopAddress?(String)
を追加
#############
"/Control_Panel/Products/CMFShopAddress?/ShopAddress?/"で以下のファイルを順次作成
>>>>>>>>>>>>>>>>>>>>>>>>>>>>
<dtml-var standard_html_header>
<h2>
Add Content</h2>
<td><b><i>ShopName:</i></b></td>
</tr>
<td><input name="ShopName?" size="50" value="<dtml-var ShopName?>"></td>
</tr>
<td><b>How to access</b></td>
</tr>
<td><input name="ShopAccess?" size="50" value="<dtml-var ShopAccess?>"></td>
</tr>
<table><tr><td width="150"> </td><td>
<input type="submit" value=" Finish " name="EditDone:method">
</p>
</td></tr></table>
</form>
<dtml-var standard_html_footer>
<<<<<<<<<<<<<<<<<<<<<<<<<<<<
>>>>>>>>>>>>>>>>>>>>>>>>>>>>
<dtml-call "propertysheets.ShopAddressPropertySheet?.manage_changeProperties(REQUEST)">
<dtml-call "manage_changeProperties(REQUEST)">
<dtml-call indexObject>
<dtml-call "RESPONSE.redirect(URL2+/folder_contents)">
<<<<<<<<<<<<<<<<<<<<<<<<<<<<
#############
使用しているCMFの"portal_types"を選択、"Factory-based Type Information"を追加
ID:ShopAddressData?
Use default type information:(None)
"ShopAddressData?"を選択
Title:ShopAddress?
Description:お店のアドレス帳です
Meta type:ShopAddress?
Product name:CMFShopAddress?
Factory method in product:addShopAddress
Initial view name:editForm
Save Change
####################################
この時点で、CMFでオブジェクトを追加できるか確認してみる。
####################################
"/portal_types/ShopAddressData?"の"Actions"タブで"Action"を追加
Name:View
Id:View
Action:view
Permission:View
Category:object
Visible?:True
"/Control_Panel/Products/CMFShopAddress?/ShopAddress?/"で"View"(DTML Method)を追加
<dtml-var standard_html_header>
<div>
<div>
<dtml-var content_byline>
<dtml-var ShopName?><br>
<dtml-var ShopAddress?>
</div>
</div>
<dtml-var standard_html_footer>
<<<<<<<<<<<<<<<<<<<<<<<<<<<<
Viewでオブジェクトを参照してみる。
"/portal_types/ShopAddressData?"の"Actions"タブで"Action"を追加
Name:Edit
Id:Edit
Action:editForm
Permission:Modify portal content
Category:object
Visible?:True
Editでオブジェクトを修正してみる。
"/portal_types/ShopAddressData?"の"Actions"タブで"Action"を追加
Name:Metadata
Id:metadata
Action:metadata_edit_form
Permission:Modify portal content
Category:object
Visible?:True
metadataでオブジェクトを修正してみる。
注意事項:
| Last edited Mon, 11 Sep 2006 04:04:11 +0900 | Edit this page |