施普雷能让我在我的电子商务应用程序中拥有“供应商”吗?

时间:2012-10-18 20:42:00

标签: ruby-on-rails ruby-on-rails-3 spree

而不是典型的一个商店应用程序,我(作为用户)去添加一个卖家(Spree应用程序的所有者)正在销售的产品,我想做的是创建一个有多个的电子商务网站供应商。

因此,您可以看到所有供应商的概述,然后您可以从多个供应商处购买多个产品。

Spree允许我自定义它吗?

如果是的话,是否有任何文件?

感谢。

2 个答案:

答案 0 :(得分:1)

一种方法(我使用的方法)是为每个项目添加“供应商”属性。注意 - 此方法假定每个项目仅由单个供应商销售。如果您实际上有一个市场,各个供应商竞相销售相同的商品,您需要通过添加为每个产品Variant定义的'供应商'OptionType来做类似的事情。

为每个供应商(新模型)分配一个代码,可在设置项目时使用(作为属性值或多个变量选项值)。下订单时,您可以使用新的OrderFulfillment模型来跟踪各个供应商用于履行该订单的各种货件(订单中每个供应商的一个OrderFulfillment记录)。

这基本上是您需要的所有模型更改。在控制器区域,您需要修改“购物车”事件机器序列以处理不同供应商的运输方式。对于多个供应商,您还需要向用户提供供应商选择(想想亚马逊市场)。

如何处理向各个供应商付款并不属于我的项目,但如果需要,不应过于复杂。

关于链接:您应该熟悉guide中一般讨论的基本Spree概念,更具体地说here。您还需要进行一些内部修改(新关联,修改后的控制器行为),您可以阅读here

答案 1 :(得分:1)

我认为你有几个选择。

基本上,您需要一个电子商务应用程序,用户可以在其中注册并列出自己的产品,然后有一个用户个人资料页面,有人可以查看该用户的产品,对吗?有些人称之为多租户,如果你进行谷歌搜索,你很快就会发现这个狂欢扩展:multi-tenant

我希望和你做同样的事情,我对多租户有点警惕,因为我必须回到Spree 2-2稳定(我目前在2-3)。

此前的答案表明您应该创建一个名为Vendor的新模型。我想说为什么不只是更新您现有的用户模型成为供应商?

我建议的只是在User模型和Spree :: Products模型之间创建关联。通过这种方式,您可以将产品范围扩展到单个用户并创建配置文件页面,而无需为每个用户添加新的,外部模型和/或不同的管理员。所有的spree方法都已经附加到你的User类,所以我认为一个简单的belongs_to / has_many关联可以工作。没有测试过这个,但这就是我的想法。

相关问题