首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > 编程 >

用zotonic 兑现 contact

2012-09-08 
用zotonic 实现 contactWhy-Assumptions-How-Troubleshooting留言发送mail1、首先配置 dispatch 这里应该是

用zotonic 实现 contact

Why-Assumptions-How-Troubleshooting

留言发送mail

1、首先配置 dispatch 这里应该是webmachine(还没具体看), 在此确定了url和模板

?

{contact_url, ["contact"], resource_template, [ {template, "contact.tpl"} ]},

?

2、创建模板,添加适当的内容即可。这里的wire很关键,目前还完全明白。?

注意delegate="resource_default_contact",这个与下面的 resource_default_conatact对应

{% wire id="contact-form" type="submit" postback={contact} delegate="resource_default_contact" %}<form id="contact-form" method="post" action="postback"> <label for="name">Name</label> <input type="text" name="name" id="name" /> <label for="email">E-mail</label> <input type="text" name="mail" id="mail" /> {% validate id="mail" type={presence} type={email} %} <label for="message">Message</label> <textarea name="message" id="message" cols="60" rows="8"></textarea> {% validate id="message" type={presence} %} <input type="submit" value="Send" /></form>

?

3、在priv/sites/default/resources/resource_default_contact.erl 创建

-module(resource_default_contact).-export([event/2]).-include_lib("zotonic.hrl").
event({submit, {contact, []}, _TriggerId, _TargetId}, Context) ->  Vars = [{mail, z_context:get_q("mail", Context)},          {name, z_context:get_q("name", Context)},          {message, z_context:get_q("message", Context)}],  z_email:send_render(z_email:get_admin_email(Context), "_email_contact.tpl", Vars, Context),  z_render:update("contact-form", "<p>The form has been submitted! Thank you, we'll get in touch soon.</p>", Context).

4、在添加?priv/sites/default/templates/_email_contact.tpl:模板


主要是配置URL\创建模板\创建处理event事件的resource

?

详细见来自官方的例子http://zotonic.com/documentation/807/implementing-a-simple-contact-form

?

热点排行