基于ror的网络订餐系统的设计与实现(编辑修改稿)内容摘要:

在开发模式中, Rails 会注意到被修改的文件并重新加载它到应用程序中。 7)创建购物车模型 当用户浏览订餐系统的在线分类目录时,他选择要购买的商品,系统约定每个被选择的产品应该被添加到客户的虚拟购物车中,在有些时候,顾客会需要很多东西,并且他会给订餐站点付款,为他购物车内的商品付款。 这意味着应用程序将需要保持所有顾客选购到购物车内的每个商品。 8)使用 session 功能 在浏览器与应用程序之间的协议 是无状态的 —— 没有内建的记忆。 当应用程序接受来自浏览器的一个请求时,就如同是第一次被访问一样,为了保存客户已放入购物车中的商品信息,系统在 Http“头”上加上一些有状态的事物。 应用程序内的某一层会试着对引入的请求,匹配它持有的本地“会话”数据部分。 如果“会话”数据的特定部分匹配来自特定浏览器的全部请求,系统会保存使用“会话”数据浏览器的顾客买下的所有商品的轨迹。 9)定义数据表之间的关联 主页: 订单是一组商品项目,与购买交易的细节。 假定系统中已经有了商品项目,当创建新订单时,它必然要和一个或多个商品项目联系在 一起。 在数据库中,这意味着系统需要从 line_items(存放购物车中商品的信息 )表到 orders(订单 )表增加一个外键引用,所以在 line_items 表中定义外键: Constraint fk_items_good foreign key(good_id) references good(id), constraint fk_items_order foreign key(order_id)references orders(id),这告诉数据库外键的情况,因为许多数据库都将检查外键约束,以保持代码的正确性。 10)定义模型之间的关系 系统中需要告诉 Rails 一个订单有很多商品项目,并且一个商品项目属于一个定单。 在 app/models 目录下新创建的 (订单模型 )文件,添加一个对 has_many()的调用。 然后在 (购物车信息模型 )文件中添加 belongs_to()方法的调用。 11)代码重用 假设已经有了一个有效的购物车,再创建一个新的 order 对象用来填充 view。 注意这个 order 还没有保存到数据库 — 它只是用 view 来组装 checkout(订单信息表单 )表单。 可以在 checkout页增加购物车内容主页: 的汇总。 因为已经有了购物车显示页面的代码,接下来就可以使用Rails 的 pos 来重用购物车的显示代码。 网上订餐系统的具体实现 1)创建数据库和表 首先在 Mysql 下创建了数据库 mydatabase,接着建立 orders 表,如图1所示。 图 1 建立 orders 表 在这里, Rails 使用一种命名习惯,表名都使用复数形式。 Rails 可以识别这些复数表名和控制器、模型、视图之间的关系。 Id 属于系统在表中查找数据所必须的主 键,是整型,非空且自增的, user_name 是用户的名字, 是用户的 地址, pay_type是用户付款的方式,shipped_at是餐厅送出商品的时间,也就是交易完成的时间。 接下来修改。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。