zoukankan      html  css  js  c++  java
  • 微信开发python+django两个月的成功经历,django是个好框架!

     
     

    时间:大三

    上学期没有用微信内置浏览器而纯对话开发,坑了自己好一下。

    下学期选错bottle框架,以为轻量好,谁知开发中什么都自己来很痛苦。

    选对了框架django,终于在大三最后的个把月里写出了里程碑式的现在这个微信端,自己都感动到,作为我大三一年web开发的终结吧。

    亮点1:自带后台管理

    亮点2:后台权限管理

    亮点3:微信回复规则设置去代码化,图形界面。

    亮点4:一平台多网店

    亮点5:图片自动缩略成200*300px大小(使用了七牛空间)

    亮点6:gzip压缩,网络流量为原来33%左右。SAE中Gzip压缩设置

    亮点7:保存接受的所以文本消息,记录永存!

    亮点8:购买者可查看历史订单,购买总额等。

    亮点9:后台可查看用户下单总额,最近下单时间等等。

    亮点10:商店信息,商品信息均在后台直接修改。

    亮点11:平台创始人可强制商店下线。

    技巧:微信规则不匹配时不能回复吗?不是,规则包含空字符总能匹配任意文本,请看下面的微信规则截图。

    后台

    选择botlle框架,自己写sql,便学边用,很痛苦的换了20天作出来了微信第一版。这版其实很简陋,但其给我的经验很重要。演示地址:点击入口

    抛弃bottle,选择django,后来证明我的选择是对的,虽然学习坡度比较大,但是其框架本身带来的效率和效益却是学习框架本身的好几倍。我喜欢它的自带后台管理,和后台权限管理,更喜欢它的ORM,省去很多sql的事情,比如sql语句编写,sql防注问题,sql迁移方便等等。这次用上了这三大功能,另外还巧用django的模板渲染实现微信回复功能,但这不是django特有。

    微信已经实现了多店功能。这也是当初我为什么坚定选择django,因为django的一project多app的架构刚好契合这个一平台多店铺的想法。后来我学scrapy框架,发现也是一project多app,方便不少。同时说明一project多app是先进的,是趋势之一。

    前台

    我比较喜欢后端的开发,前端的我就修改已有好的前端代码,参考了微信公众号“果然美”,“微果大爱”,“华农果满堂”,“微盟”,“乐外卖”等前端设计。技术上使用html5+css3。

    现在平台上有果色天香和澳洲红酒两个店铺

                                                  

     代码统计

    使用linux shell统计 

    合理版 cat $(find . -name "*.py" -or -name "*.yaml" -or -name "*.rst" -or -name "sell_detail.html") | wc | sed "1i static: lines | words | bytes"   

    纯净版 cat $(find . -path "./guosetianxiang" -prune -or -name "*.py" -or -name "*.yaml" -or -name "*.rst" -or -name "sell_detail.html") | wc | sed "1i static: lines | words | bytes"  

    完全版 cat $(find . -name "*.py" -or -name "*.yaml" -or -name "*.rst" -or -name "*.html") | wc | sed "1i static: lines | words | bytes" 

    前端展示:感谢前人成果!

                                   

    =============================后台是亮点=============================

    后台首页

    微信回复规则,使用模板渲染自定义变量!

      

    功能代码:

       

    微信用户

     

    订单截图

    看到这里,你是否也认为django是个好框架呢?

    在新浪云上运行得还好,不算慢,请那些嫌弃django臃肿庞大,速度慢的人,不要再误导他人,这就好像那些说python慢的人一样,我至今没有实践证明出过慢在哪。

    django是python作者本身都很喜欢的框架,又是那么多商用网站的框架,经得其考验。

    如果可以,当然希望你可以作出一个比django更好的框架,可是至少现在还不大可能。python的django和ruby的rails都得经过时间的考验。我相信 django 是经得住考验的,正如我相信python一样。

    附上

    增加微店步骤(澳洲红酒为例)


    复制guosetianxiang 改名 aozhouwine
    修改setting.py 安装app 'aozhouwine'
    访问/syncdb-online完成数据库同步
    根app的url.py 加入两行:
    import aozhouwine

    ...

    url(r'^aozhouwine/', include('aozhouwine.urls')),

    admin管理,weixinshop应用商店表中增加一条,并增加账户给商店所有者A,然后授权。
    A在自己的应用商店信息表中增加一条记录,(token在此设置)。
    微信开发者url: /aozhouwine/weixin/ token为之前设置的。
    访问/aozhouwine/sync_shopinfo完成商店同步。
    A增加消息,回复规则表中的记录。
    A上架商品。

    依然涉及少量代码操作,以及有一点繁琐。

     
     
  • 相关阅读:
    贝叶斯在机器学习中的应用(一)
    使用ajax发送的请求实现页面跳转
    关于welcom-file-list 失效
    在新的线程中使用session 出现的问题
    关于innerHtml= 与 html() 区别
    request.getAttribute()和 request.getParameter()有何区别?
    __STL_VOLATILE
    声明一个返回特定类型函数指针的函数
    关于vue的基础概念
    Vue.js结合vue-router和webpack编写单页路由项目
  • 原文地址:https://www.cnblogs.com/weishun/p/django-shop-thanks-djangoteam.html
Copyright © 2011-2022 走看看