小编Nic*_*ick的帖子

在每个'when'块中具有多个值的Case语句

我可以描述我正在寻找的最好的方法是向您展示我迄今为止尝试过的失败代码:

case car
  when ['honda', 'acura'].include?(car)
    # code
  when 'toyota' || 'lexus'
    # code
end
Run Code Online (Sandbox Code Playgroud)

我有大约4或5种不同的when情况应该由大约50种不同的可能值触发car.有没有办法用case块来做这个或者我应该尝试一个大块if

ruby syntax ruby-on-rails switch-statement

298
推荐指数
2
解决办法
11万
查看次数

在Ubuntu上为Ruby on Rails安装PostgreSQL

我目前在Ubuntu 12.04中通过RVM安装了Ruby on Rails.默认数据库是在SQLite3中设置的,但是为了推送到Heroku,我想切换到PostgreSQL.我怎么能做到这一点?

ruby postgresql ubuntu ruby-on-rails heroku

73
推荐指数
2
解决办法
4万
查看次数

由于New Relic RPM gem,Heroku推动失败

gem 'newrelic_rpm'根据Heroku的文档,我已经进入了我的Gemfile .当我尝试运行时,git push heroku master我收到以下内容:

-----> Ruby/Rails app detected
-----> Installing dependencies using Bundler version 1.3.0.pre.5
       Running: bundle install --without development:test --path vendor/bundle --binstubs vendor/bundle/bin --deployment
       Fetching gem metadata from https://rubygems.org/........
       Fetching gem metadata from https://rubygems.org/..
       Could not find newrelic_rpm-3.5.6.46 in any of the sources
 !
 !     Failed to install gems via Bundler.
 !
 !     Heroku push rejected, failed to compile Ruby/rails app

To git@heroku.com:reponame.git
 ! [remote rejected] master -> master (pre-receive hook declined) …
Run Code Online (Sandbox Code Playgroud)

ruby-on-rails heroku newrelic

21
推荐指数
1
解决办法
1930
查看次数

更改dbpath后,MongoDB没有使用/etc/mongodb.conf

自从我改变了dbpathin /etc/mongodb.conf,MongoDB没有自动启动,也没有使用新的dbpath.在更改之前,MongoDB将在计算机启动时运行,我能够简单地运行命令mongo进入控制台或启动我的Ruby on Rails服务器而没有任何问题.

在我进行修改之后(为了切换到具有更多空间的新驱动器),我能够使一切工作的唯一方法是手动运行命令mongod --config /etc/mongodb.conf.如果我不运行它,似乎服务没有运行和运行没有--config选项给我以下错误:ERROR: dbpath (/data/db/) does not exist.即使配置文件没有说明data/db.

其他一些说明:

  • 除了改变/etc/mongodb.conf,我感动了所有的文件出来/var/lib/mongodb,进入/home/nick/appdev/mongodb.
  • 我改变了所有者和组从rootnick.尝试改变它,但它似乎没有解决任何问题.
  • 我正在使用Ruby on Rails 3.2.8运行Ubuntu 12.10 Beta 1和Mongo 2.2.0

mongodb

14
推荐指数
2
解决办法
1万
查看次数

Rails - 我应该在哪里计算派生属性?

Ruby on Rails的Noob问题 - 这是我的情况的一个例子:如果我有模型circle和属性radius,我在哪里进行计算circumference?这是在模型还是控制器中,它看起来如何?circumference需要在我的网站上访问views.

另外,我是否正确认为我不需要创建circumference属于我的模型/数据库的属性,因为它可以从用户输入派生radius

ruby-on-rails

10
推荐指数
1
解决办法
4347
查看次数

Magento - 地址第2行的代码是什么?

无论出于何种原因,我的Magento商店中缺少第二个地址行,但我注意到它在其他商店中处于活动状态.有人可以在以下文件中复制并过去他们的第二个地址行的内容:

  • 模板/客户/地址/ edit.phtml
  • 模板/结算/ onepage/shipping.phtml
  • 模板/结算/ onepage/billing.phtml

下面是我对第一条街道线的例子,但我需要添加第二条街道线.此外,还有什么我需要改变才能使这项工作?我怀疑核心功能仍然存在,它只是没有出现在前端.

<li class="wide">
   <label for="street_1" class="required"><em>*</em><?php echo $this->__('Street Address') ?></label>
   <div class="input-box">
      <input type="text" name="street[]" value="<?php echo $this->htmlEscape($this->getAddress()->getStreet(1)) ?>" title="<?php echo $this->__('Street Address') ?>" id="street_1" class="input-text required-entry" />
   </div>
</li>
Run Code Online (Sandbox Code Playgroud)

magento

9
推荐指数
3
解决办法
2万
查看次数

在测试环境中设置default_url_options似乎不起作用

我已将以下代码放入我的config/environments/test.rb文件中:

config.action_mailer.default_url_options = { :host => "localhost:3000" }
Run Code Online (Sandbox Code Playgroud)

但是当我运行我的测试时,所有路由都会使用http://test.host.我正在尝试使用不接受http://test.host作为有效回调URI 的API ,所以我需要更改它以正确接收API响应.知道为什么这不起作用吗?(我在我的测试套件中使用RSpec,Guard和Spork).

编辑:可能相关 - 这是在控制器规范内完成的.

EDIT2:它似乎一个请求通过后作出改变get,post等运行测试中下面的代码:

Rails.logger.debug users_url
get 'http://google.com'
Rails.logger.debug users_url
Run Code Online (Sandbox Code Playgroud)

会产生以下输出:

http://localhost:3000/users
...get request related response here
http://google.com/users
Run Code Online (Sandbox Code Playgroud)

testing rspec ruby-on-rails-3

6
推荐指数
2
解决办法
6092
查看次数

RoR "file_field" 和 Twitter 引导程序

我正在尝试在我的 Rails3 应用程序中自定义这部分代码

<%= f.submit "Create my account", :class => "btn btn-small btn-primary btn-inverse" %>
<%= f.file_field :photo %>
Run Code Online (Sandbox Code Playgroud)

进入这个:

<%= f.submit "Create my account", :class => "btn btn-small btn-primary btn-inverse" %>
<%= f.file_field :photo, :class => "btn btn-small btn-primary btn-inverse" %>
Run Code Online (Sandbox Code Playgroud)

但 file_field 似乎没有响应定制。

有人可以帮助我吗?

ruby-on-rails-3 twitter-bootstrap

5
推荐指数
1
解决办法
6024
查看次数

设置git推送到另一个用户的Github仓库?

假设我user1和我有一个Github帐户http://github.com/user1.当然,我会在本地设置git:

origin git@github.com:user1/repo.git (fetch)
origin git@github.com:user1/repo.git (push)
Run Code Online (Sandbox Code Playgroud)

如果我获取并推送其他人的回购(让我们说user2)回购所在的回购权限,我该怎么办http://github.com/user2/user2srepo.git

编辑:对不起,每个人都对他们的答案是正确的.我应该澄清一下,我曾经把它设置为origin http://github.com/user2/user2srepo.git但我想避免每次推送都被要求提供用户凭据.

git github

5
推荐指数
1
解决办法
8999
查看次数

如何使用Heroku阻止引荐垃圾邮件

我最近在Heroku上推出了我的第一个应用程序,我一直看到Google Analytics中的流量显示在我的应用中不存在的页面上.我不建议点击这些网站,但它显示在"首页"下面http://co.lumb.co/,然后显示http://forum.topic56809347.darodar.com/为"顶级推荐人".

我已经看到一些涉及使用.htaccess文件阻止垃圾邮件发送者的解决方案,但我如何使用Heroku和Rails执行此操作?(我是两个新手)

这是我应该关注的吗?我在这个Wordpress主题上发现了类似的问题:https: //wordpress.org/support/topic/a-non-existent-page-is-showing-up-on-my-analytics

谢谢!

.htaccess ruby-on-rails heroku

4
推荐指数
1
解决办法
1207
查看次数

Rails错误 - "require":没有要加载的文件 - ruby​​gems(LoadError)

我最近跟着一些RVM的指令进行安装ruby-debug,我认为它可能会引起一些问题.我找到说明的链接在这里:http://beginrescueend.com/support/troubleshooting/

我以前安装的命令如下:

$ rvm reinstall 1.9.3 --patch debug --force-autoconf
$ gem install ruby-debug19 -- --with-ruby-include="${MY_RUBY_HOME/rubies/src}"
Run Code Online (Sandbox Code Playgroud)

现在,当我尝试启动rails服务器时,收到以下错误:

./bundler_stubs/rails:13:in `require': no such file to load -- rubygems (LoadError)
from ./bundler_stubs/rails:13
Run Code Online (Sandbox Code Playgroud)

这个SO问题会让我相信我安装了多个版本的rails:没有这样的文件要加载 - ruby​​gems(LoadError)

但是,当我which -a ruby按照所选答案的建议运行时,我只会收到/usr/bin/ruby.关于在这里做什么的任何想法?

rubygems ruby-on-rails rvm

2
推荐指数
1
解决办法
5589
查看次数

Magento - 导入挂起/冻结

我目前正在尝试导入940个产品(1.57mb)的csv文件.当我使用Magento v1.5.1.0导入功能(不是数据流功能)时,它会给我"请稍候..."屏幕,然后无限期挂起.当我查看产品目录时,所有940产品都带有SKU编号,但就是这样.似乎没有其他产品数据被导入.

编辑:我将文件分成大约300个产品的3个部分后成功导入.这让我相信csv文件很好,但是大量文件导致某种超时.

import magento

1
推荐指数
1
解决办法
7365
查看次数