小例子
费了好力气才有所了解
在service下创建这样一个module----service_langxw_lxw (注意“没有serivice目录就创建这样一个目录)
个人很不理解为什么要一个api对应这样一个module,这样module会膨胀的很大
官方文档:http://zotonic.com/documentation/911/resource-api 看了好久也没全明白
20 -module(service_langxw_lxw).
21 -author("Arjan Scherpenisse <arjan@scherpenisse.net>").
22
23 -svc_title("Retrieve a full export of an object.").
24 -svc_needauth(false).
26 -export([process_get/2, process_post/2]).
27
28 -include_lib("zotonic.hrl").
29
30
31 process_post(_ReqData, Context) ->
32 ?DEBUG(_ReqData),
33 ?DEBUG(Context),
34 ?DEBUG({"z_context:get_q(id, Context)", z_context:get_q("id", Context)}),
35
36 try
37 z:m()
38 catch
39 _:_ ->
40 undefined
41 end,
42 %"OK".
43 mochijson:encode("sdf").
44
45
46 process_get(_ReqData, Context) ->
47 ?DEBUG(_ReqData),
48 ?DEBUG(Context),
49 ?DEBUG({"z_context:get_q(id, Context)", z_context:get_q("id", Context)}),
50
51 try
52 z:m()
53 catch
54 _:_ ->
55 undefined
56 end,
57 %"OK".
58 mochijson:encode("sdf").
59 %case z_context:get_q("id", Context) of
60 % undefined ->
看到目录是service 想到-module(z_service). 打开发现一下内容,来post这样处理
146 %% define the handler mapping for the module.
147 handler('POST') ->
148 {process_post, 2};
149 handler('GET') ->
150 {process_get, 2};
151 handler('HEAD') ->
152 {process_get, 2};
153 handler('PUT') ->
154 {process_post, 2};
155 handler('DELETE') ->
156 {process_post, 2}.
157
分享到:
相关推荐
Zotonic是使用Erlang构建的开源,高速,实时Web框架和内容管理系统。 它是灵活的,可扩展的,并且从头开始设计以支持动态的交互式网站和移动解决方案。 Zotonic的速度非常快而且非常稳定-适用于从基本网站到复杂的...
SOLR 对 Zotonic 的支持 该模块向 Zotonic 添加了对 Solr 的支持。 它内置了 Solr:只需安装此模块即可。 设置完成后,Zotonic 会将其保存的每个资源推送到 Solr,以便可以查询数据库。 要将整个站点重新索引到 ...
闲聊mod_chitchat 是 Zotonic 的多房间聊天模块。 内部使用 MQTT 进行消息传递。 这使得使用外部 MQTT 客户端连接到此聊天成为可能。 ChitChat 具有以下特点: 基于 Websocket 或 Comet 的基于推送的通信多个房间,...
ElixirHTML是一个可能的Elixir库或工具,用于处理HTML生成和解析,它可能提供了简洁的API来简化在Elixir项目中操作HTML的工作。 综上所述,这个社区讨论的主题涵盖了从基础的Erlang和Elixir编程,到利用BEAM虚拟...