假设您有一个域实体用户,并且您希望支持用户向其购物车添加商品的功能。现在,我们希望确保购物车中的商品是唯一的,因此我们在User类中创建了以下函数:
function AddItemToCart(Item item)
{
// Add business logic to make sure item is unique
}
这很好用。但是,如果我们现在还想在将商品添加到购物车时向用户发送电子邮件,该怎么办呢?我们可以将其添加到AddItemToCart中,但这需要将某种IEmailer依赖注入到User类中。
另一种方法是创建一个服务来处理此事务(例如ShoppingCartServi
我有一个Commodity(name:string)模型和一个Price(amount:float)模型,这样:
class Commodity < ApplicationRecord
has_many :prices
end
和
class Price < ApplicationRecord
belongs_to :commodity
end
因此,一种商品可以有多个价格。
我有一个商品搜索表,显然可以让用户搜索商品。我希望包括一个sort_link(@q, :prices_amount)排序过滤器。点击此链接将显示根据其价格排序的所有商品(如果一个商品有多个价格,则该商