lanrion / weixin_rails_middleware

微信集成 ruby weixin_rails_middleware for integration weixin.
MIT License
408 stars 107 forks source link

diy menus 是不是没有排序功能? #17

Closed 85636682 closed 10 years ago

85636682 commented 10 years ago

我觉得应该要加个排序功能!

lanrion commented 10 years ago

@85636682 已经更新wiki。加个 sort 字段即可。BTW,如果你在项目中有使用到此gem,不介意的话给个star,作为一个真实使用者统计。谢谢。

85636682 commented 10 years ago

好的,我正在使用,请问你的微盟的?这个也是从微盟分离出来的GEM吗?

lanrion commented 10 years ago

@85636682 不是。可能是Ruby China 的帖子上给你造成了误会。不过,在微信开发的研究有大半年的经验。有问题可以及时联系我。我会去帖子上回复澄清一下。

85636682 commented 10 years ago

非常感谢你的gem和你的解答!我刚开始接触微信开发,不吝赐教!

lanrion commented 10 years ago

@85636682 也有其他微信开发项目的gem可以参考,看是否需要:

相关gem推荐使用 https://github.com/lanrion/weixin_rails_middleware#%E7%9B%B8%E5%85%B3gem%E6%8E%A8%E8%8D%90%E4%BD%BF%E7%94%A8

85636682 commented 10 years ago

@lanrion 恩恩,都是需要的,谢谢!

85636682 commented 10 years ago

@lanrion 做wap,可以用你推荐的gem,如果要实现给用户选择多模板或者自己修改,这方面你有相关的资料和经验吗?想请教下!

lanrion commented 10 years ago

一般3G首页多模板选择,实现可以这样: 1,已知有 1,2,3,4四个模板,命名分别为:

_1_home_templ.html.erb, 
_2_home_templ.html.erb, 
_3_home_templ.html.erb, 
_4_home_templ.html.erb

2,在用户的记录里添加一个字段,home_template:integer

3,当用户点击某个模板时,提交一个update操作,把点击的模板的标志id值(值为:1,2,3,4)保存,比如点击了第1个模板,那么 home_template的值保存为 1

4,在3G首页中做渲染时,即可:

 <%= render "wap/home/home_templates/#{@current_user.home_template}_home_templ" %>

5,命名自己可以重新约定更简约点。

至于让用户 自己修改 这个比较难吧。用户自己修改的话,只能提供一个 定制 的服务。有很多微信营销网站者了提这种服务,不失为另一种营利方式。

85636682 commented 10 years ago

@lanrion 在rubychina里,提到用liquid,而且shopqi也有使用,但是看他的源代码,看不明白,是自己水平差,正在研究中!

85636682 commented 10 years ago

@lanrion 图文回复的时候,我设置一个reply_content的字段代表详细页的内容, 具体数据库设计是这样的

模型(触发关键词, 匹配类型,题目,封面,简介,是否在详细页显示封面,详细页内容)
news( key, match_type, title, sort, pic url, description, show_cover, reply_content)

而提供的generate_article(title, desc, pic_url, link_url)的link_url是不是代表跳转到详细页的连接?

lanrion commented 10 years ago

@85636682 https://github.com/Shopify/liquid 不错!感谢推荐。一般的3G页面,有些结构是固定的,如果模板不多,我推荐的方法也应该是最容易的方法之一。目测liquid大概是这样:保存模板到数据库,然后他自己定义了一套模板语言,通过自己的API来渲染模板里面的变量。

lanrion commented 10 years ago

generate_article(title, desc, pic_url, link_url), 你观察一下,订阅号的文章列表信息,每条文章都是有条链接,点击了之后的跳转,如果有详细的内容,那就跳到当前文章的show页面。另外,news( key, match_type, title, sort, pic url, description, show_cover, reply_content) 你可能还需要再添加一个 外链 link_url ,即如果没有填写 reply_content 时,点击的跳转链接。

要么就去你的reply_content 详细页面,要么就去外链,比如想让微信用户点击后直接去到淘宝,就link_url="http://www.taobao.com""

85636682 commented 10 years ago

@lanrion 恩恩,明白,应该根据reply_content是否为空来定义link_url的内容!

85636682 commented 10 years ago

@lanrion 恩恩,liquid是很好,现在在研究着shopqi的代码,看看他是怎样设计的!

lanrion commented 10 years ago

@85636682 可否将liquid 添加到 https://github.com/lanrion/weixin_rails_middleware/wiki/develop-tools 这篇wiki里?做个收集,方便其他开发者使用。谢谢了

如果你有更多好的工具,也可以添加到里面。

85636682 commented 10 years ago

好的

85636682 commented 10 years ago

@lanrion 请问开发微信,是如何测试的?特别本地!

lanrion commented 10 years ago

@85636682 https://github.com/lanrion/weixin_rails_middleware/blob/master/README.md 详细看文档。