- android - RelativeLayout 背景可绘制重叠内容
- android - 如何链接 cpufeatures lib 以获取 native android 库?
- java - OnItemClickListener 不起作用,但 OnLongItemClickListener 在自定义 ListView 中起作用
- java - Android 文件转字符串
请注意,此问题是关于运费,而不是价格。有一个重要的区别,即运输方式对店主产生的 $$ 费用,而不是客户支付的 $$ 费用。
shipping_tablerate
数据库表包括一个 cost
填充在 Mage_Shipping_Model_Carrier_Tablerate
中的字段collectRates
期间的对象方法。但是,该字段在堆栈中的其他任何地方都不可访问,例如从报价的地址。
我需要在购物车页面上访问该值,但除了实例化一个 Mage_Shipping_Model_Rate_Request
之外,我找不到其他方法来实现它。传递给 collectRates()
的对象.鉴于数据已经从表中加载并且应该可以访问,这似乎不必要地低效。
我已经尝试观察 <shipping_carrier_tablerate_load/>
事件,但似乎 _load
不会为该模型抛出事件。
我也试过从报价中获取汇率:
$quote = Mage::getSingleton('checkout/cart')->getQuote();
$address = $quote->getShippingAddress();
$rate = $address->getShippingRateByCode($code ='tablerate_bestway');
我可以看到计算出的 price
, 然而 cost
该模型中不存在。
在这个阶段,我的想法已经用完了。非常感谢收到任何建议!
谢谢,乔纳森
最佳答案
首先,在您发现某处存在真正的瓶颈之前,请不要过分担心性能。相信众多的缓存系统。更讽刺的是,Magento 已经有点像 SQL 野兽了,所以如果你有一个调整好的商店,一些额外的查询不会有什么坏处。
其次,数据库命中甚至可能不是问题。 shipping/rate_request
模型似乎没有数据库支持。如果你看一下它在核心代码中使用的两次
Mage_Shipping_Model_Shipping::collectRatesByAddress
Mage_Sales_Model_Quote_Address::requestShippingRates
您可以看到 shipping/rate_request
模型正在被实例化,然后从已经加载的字段中填充。此外,Mage_Shipping_Model_Carrier_Tablerate::collectRates
中使用的所有模型都不会从数据库加载任何内容,它们只是进行计算。
令人钦佩的是,您希望在第一次运行时构建尽可能高性能的东西,但现代 OO 系统中有太多复杂的交互,以至于无法神奇地知道做某事的最佳方式。做你需要做的事情来获取你需要的信息,并在维护版本期间处理性能调整(如果需要)(或者如果你没有幸运地拥有维护版本,当你的组织中有权力的人提示某处的速度)
第三,当系统不提供对你需要的东西的访问时,这就是类覆盖系统的作用。有点像
class Package_Module_Model_Carriertablerate extends
Mage_Shipping_Model_Carrier_Tablerate
{
public function getRate(Mage_Shipping_Model_Rate_Request $request)
{
$rate = parent::getRate($request);
Mage::register('package_module_carriertablerates', $rate);
return $rate;
}
}
...
//later, retrieve the rate
$rates = Mage::registry('package_module_carriertablerates');
您基本上是在调用与以前相同的代码,但将结果存放在某个地方以供以后访问。与覆盖一样安全。
关于php - 在 Magento 的购物车和/或结帐处访问运费,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3848705/
我们都在流行的网站上看到,购物车图标的右上角有一个小图标!我必须在我的 ASP .NET 网页中使用类似的东西。 如何让这个图标位于购物车图标的右上角.. 购物车的图标是一个普通的 bootstrap
Closed. This question does not meet Stack Overflow guidelines 。它目前不接受答案。 想改善这个问题吗?更新问题,使其成为 Stack Ov
可以使用 REST 架构约束来实现购物车吗? 我想把我的问题集中在 session 状态上。在实现购物车的典型 MVC 应用程序中,很可能 session 对象将在 session 中管理,购物车作为
我的网上商店使用自己的模板,但在我的网站上我使用货币欧元而不是美元。哪里可以编辑啊。 http://i50.tinypic.com/67rvhc.png 最佳答案 进入系统>配置。 然后在“通用”>“
我想在我的门户中使用购物车。我可以获得 jquery 的购物车插件吗? 格纳尼亚尔·祖贝尔 最佳答案 http://simplecartjs.com/不是 JQuery,但如果 PayPal 或 Go
关闭。这个问题需要更多 focused .它目前不接受答案。 想改进这个问题?更新问题,使其仅关注一个问题 editing this post . 4年前关闭。 Improve this questi
我正在尝试将产品添加到我的购物车。 我收到一条错误消息: 警告:为 foreach() 提供的参数无效 它告诉我以下代码出现错误: function isInCart($id) { if (!empt
我目前正在使用 PHP 开发购物车,我正在尝试弄清楚如何使用我编写的代码将商品添加到购物车本身。我的数据库中的项目显示正确,但只有 $item 下的最后一个数组被添加到购物车。以下显示项目。 $res
在我的laravel购物车上,我创建了一个delete函数,使用json或dd函数进行测试时似乎还可以,但是尝试返回路线购物车 View Route [cart] not defined.时,这是一个
就目前情况而言,这个问题不太适合我们的问答形式。我们希望答案得到事实、引用资料或专业知识的支持,但这个问题可能会引发辩论、争论、民意调查或扩展讨论。如果您觉得这个问题可以改进并可能重新开放,visit
将相同的产品添加到购物车时,它正在添加新行,但如果相同的产品 ID 已在购物车中,则需要更新数量。 我需要它与数量更新保持一致。 最佳答案 您需要覆盖 app/code/core/Mage/Sales
你好, 我正在创建一个用于培训目的的 PHP 商店。我希望用户能够查看他最后下的订单 - 但我很难意识到这一点。 我的数据库中有这些表: 客户( child 、姓名、地址...) 产品(pid、pro
我正在考虑建立一个迷你购物网站。不涉及支付方式,只是显示和维护的所选产品的总数。这将由商店中的一个人操作以进行和监控销售。 概念是:产品应该在页面中显示为大图像,通过点击它们我将它们存储在购物车中。然
我有以下产品和购物车表格: //产品表 Products: id | Product_value ----------------------- 1 | Product
我尝试使用 php ang mysql 在 google 中搜索购物车中的代码。当我单击“添加到购物车”按钮时,我的 cart.php 中没有显示任何内容。请帮助我。 这是我的产品.php ">ADD
我正在为摄影业务创建 PHP 购物车。这是我尝试的第一个电子商务网站(新手) 我已成功将产品添加到购物车(存储在 session 中)(产品:打印品、 key 圈、磁铁等) 但是我还需要将 image
变量被添加到从另一个页面传递的 session 数组 此处为详细信息页面 string(4) "3911" [1]=> string(4) "5005" [2]=> NULL [3]=> strin
我的模型中设置了以下核心数据关系。 类别 -> 产品 -> 购物车产品 1)) { // handle error } else if (![cartProducts count]) {
我已经根据示例实现了jQuery的购物卡:http://jsfiddle.net/RR6z5/1/ 但是有一个小错误。当我将一个元素从产品拖到购物卡,然后无拖放,我从购物卡拖到产品时,产品中的原始元素
大家好,就 css 和 javascript 而言,我是个新手。我正在使用的新主题是让我的 paypal minicart 显示在内容下方,因此您不能单击它,也不能从中删除内容,但您可以看到购物车稍微
我是一名优秀的程序员,十分优秀!