想用 Django 给学校的网上订餐系统写一个现代点的皮,问个关于 MVC 的问题

2015-11-08 18:24:56 +08:00
 ujmxyd
学校的订餐系统页底的版权声明写着 2010 ,用 ASP.NET 写的。提交菜单后至少要 5 秒才有反应、大块的 VIEWSTATE 和 EVENTVALIDATION 。至于界面……圆角、渐变都是 gif 图。在学校首页登陆,会跳转到一个只在开了兼容性视图的 IE 工作的先清 Cookie 再登录的页面,如果用别的浏览器,便卡在那儿了。不过,它使用 CAS 来中央登陆,把 CAS 的地址挖出来便可以在其他浏览器工作了。这事儿,别人干过。放进微信公众号,写着“手机订餐”
在此之前没写过什么正经的东西,对 Python 的语法也不甚了解,便先边查文档边用 Python 3 写了一个能够订餐的客户端。
然后去翻了 Django 的文档。之前认为程序的逻辑都应该放在 models.py ,但看到[Each model is a Python class that subclasses django.db.models.Model.]( https://docs.djangoproject.com/en/1.8/topics/db/models/#s-module-django.db.models),便不知道该怎么做了。还没有想去实现除了代理订餐的功能,因此菜单什么的不需要存进数据库。至于身份验证,我这儿也没有把用户名和密码存进数据库的必要。感觉不知道该把模拟登陆、拉取菜单、提交菜单这些功能放在哪里。是不是必须得用上数据库?希望有人能解答。谢谢!
2158 次点击
所在节点    问与答
4 条回复
kumakiti
2015-11-08 18:28:56 +08:00
我个人认为这些东西不需要自己用数据库,直接用学校的就好,这样学校那边更新了。自己这边也直接更新了
ujmxyd
2015-11-08 19:49:23 +08:00
@kumakiti 我是这样想的,但不知该怎么去写……
kumakiti
2015-11-08 20:04:55 +08:00
模拟登陆:提供表单,提交数据,浏览器记录一下是否登录的状态
拉取菜单:这个直接从学校那里抓
提交菜单:提交给学校的接口就行
wizardforcel
2015-11-08 20:05:54 +08:00
业务逻辑放在 view 里面。
业务逻辑放在 view 里面。
业务逻辑放在 view 里面。

django 的 view 相当于其它框架的 controller 。

由于你的数据是跟教务网站打交道,并不涉及到访问数据库,可以不配置任何 model 。你需要找个 url 库用于发送 http 请求,比如 urllib2 ,然后把代码封装一下给 view 调用。

就酱紫。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/234616

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX