首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >商业航运计算器找不到

商业航运计算器找不到
EN

Stack Overflow用户
提问于 2015-01-20 20:39:30
回答 1查看 445关注 0票数 1

我正在尝试在我的安装中添加一个托运方法(第一次添加一个传送方法)。当我访问此表单(admin/shipping_methods/new)时,计算器下拉式下没有可用的托运计算器。从文档中,狂欢节默认附带5个计算器,但没有可用的。

我使用的是疯狂的2-4-stable。我已经浏览过回购程序,当然,计算器在那里。我还对控制器进行了研究,以查看在何处进行调用来构建计算器数组。控制器内的代码是:

代码语言:javascript
复制
...
@calculators = ShippingMethod.calculators.sort_by(&:name)
...

这将返回一个空数组,因此没有出现计算器。

我试着在没有运气的情况下,自己拉出其他领域的计算器列表。

代码语言:javascript
复制
# Returns an empty array as well
@calculators = Spree::ShippingMethod.calculators

奇怪的是,如果我在我的目录中运行rails console,并且一旦初始化,运行

代码语言:javascript
复制
# Returns the 5 default calculators
calculators = Spree::ShippingMethod.calculators

很自然,我很困惑。rails控制台是否从不同的源提取?如何从控制台中提取数据,而不能从应用程序中提取数据。没有错误,只是应用程序内部的一个空数组。

这使我无法添加传送方法,从而无法完成我的设置。

有什么想法吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-01-21 03:24:54

我认为这更像是一个黑客,而不是一个“答案”,但不管怎样,这都是一个解决方案。

最后,我决定只创建我自己的航运计算器,只需简单地克隆任意一个缺省值并重新命名它。我跟踪了创建自定义托运计算器的文档。一旦我复制并重命名了这个类,我就通过所述的config方法添加它。

在添加config语句后,所有默认的发货计算器都开始出现!就好像要创建另一个bug一样,但是我的自定义计算器却找不到。我决定删除添加计算器的配置行,但保留了初始配置行,使默认计算器正常工作。

所以,虽然我确信这是某种错误,但解决方案是在config/initializers/spree.rb的底部添加下面的一行

代码语言:javascript
复制
config = Rails.application.config

重新启动服务器然后砰!计算器现在可供选择。

更新:

为了进行测试,我从文件中删除了配置行,并从目录中删除了我的自定义航运计算器,以查看它是否会再次破坏航运计算器。奇怪的是,它们还能工作。也许使用上面的方法加载配置,在系统中保存了一个状态,允许它继续工作。

不管怎样,我希望其他人能对这一问题提供一些启示。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/28054729

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档