小编mar*_*ion的帖子

如果在 1 行中返回的值为 0,我如何优雅地返回 1.0?

我有这样的声明:

> zv.sum(:volume).to_f || 1.0
   (0.5ms)  SELECT SUM("positions"."volume") FROM "positions" WHERE "positions"."volume" = $1  [["volume", 0]]
=> 0.0
Run Code Online (Sandbox Code Playgroud)

我想要发生的是 ifzv.sum(:volume)返回0.0,我希望它返回1.0

我知道我可以做一个冗长的if/unless语句,但我想在上面的 1 行中优雅地做它。

我怎么做?

ruby ruby-on-rails-5

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

Rails 2.3和Rails 3.0是否以不同的方式处理数组的显示?

我正在阅读使用Rails 2.3的视频教程,他们做了:

<%= first_array = ['a', 'b', 'c'] %>
Run Code Online (Sandbox Code Playgroud)

当他们这样做时,他们获得的输出是:

abc
Run Code Online (Sandbox Code Playgroud)

当我试图跟随时,在我的设置(Rails 3.0)上,我得到:

["a", "b", "c"]
Run Code Online (Sandbox Code Playgroud)

这种差异是正常还是我做错了什么?

谢谢.

ruby-on-rails ruby-on-rails-3

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

让Action Mailer + Devise很好地一起玩

所以我按照指南 - 步骤1 - 2.1.3.

我无法让系统发送电子邮件.这完全在我的开发环境中.

在我的用户控制器中,我编辑了创建操作,如下所示:

def create
    @user = User.new(params[:user])

    respond_to do |format|
      if @user.save
        UserMailer.welcome_email(@user).deliver

        format.html { redirect_to(@user, :notice => 'User was successfully created.') }
        format.xml  { render :xml => @user, :status => :created, :location => @user }
      else
        format.html { render :action => "new" }
        format.xml  { render :xml => @user.errors, :status => :unprocessable_entity }
      end
    end
  end
Run Code Online (Sandbox Code Playgroud)

user_mailer.rb文件如下所示:

class UserMailer < ActionMailer::Base
  default :from => "no-reply@mydomain.com"

  def welcome_email(user)
    @user = user
    @url = "http://localhost.com:3000/users/login"
    mail(:to …
Run Code Online (Sandbox Code Playgroud)

ruby-on-rails-3

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

如何更改img所在的<td>悬停时的图像 - 在jQuery中?

你可以在这里看到实现http://jsfiddle.net/xNSFA/

现在,当你将鼠标悬停在单元格上时,它会改变一些特征.但图像不会改变.仅当您将鼠标悬停在图像上时,图像才会发生变化.

如何让图像随其他一切变化?

顺便说一下,它不需要在jQuery中完成.如果在CSS中有一个很好的方式来做到这一点,我很乐意.但我只是假设这是不可能的 - 因为图像操作,我不想设置该图像的背景.我希望细胞内的图像.

谢谢.

html css jquery

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

如何在Rails 3中的image_tag助手中执行if语句?

基本上我想要做的是检查方法是否在对象上返回true,如果是,则将特定类应用于图像.

如果没有,那就什么都不做.

所以我尝试了这个:

<%= image_tag(upload.image.url, if upload.upvoted? :class => 'upvoted') %>
Run Code Online (Sandbox Code Playgroud)

但这是我得到的错误:

/app/views/stages/compare.html.erb:29: syntax error, unexpected ')', expecting keyword_then or ';' or '\n'
...d.upvoted? :class => 'upvoted') );@output_buffer.safe_concat...
...                               ^
/app/views/stages/compare.html.erb:31: syntax error, unexpected keyword_end, expecting ')'
');              end                        
                    ^
/app/views/stages/compare.html.erb:63: syntax error, unexpected keyword_ensure, expecting ')'
/app/views/stages/compare.html.erb:65: syntax error, unexpected keyword_end, expecting ')'
Run Code Online (Sandbox Code Playgroud)

ruby-on-rails ruby-on-rails-3

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

为什么当我在生产模式下启动瘦服务器时,它无法找到我的用户表,但它是否以常规模式运行? - Rails 3

我试图在生产中复制我的应用程序中的错误,但是当我像这样启动瘦:

thin -e production start

当我进入我的主页时,我得到了这个:

ActiveRecord::StatementInvalid in Devise::SessionsController#new

Could not find table 'users'
Run Code Online (Sandbox Code Playgroud)

这很奇怪,因为我做过:

thin start

该页现在有效.

我现在处于生产模式时是否必须运行一组新的迁移?或者它是否在生产模式下它不喜欢SQLite?

谢谢.

ruby-on-rails ruby-on-rails-3

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

如何使用Sencha Touch访问本机API?

如果我想创建一个允许用户用手机拍照,录制音频笔记和录制视频的移动应用程序,我该怎么做?

我正在浏览Sencha Touch 2 API,当我看到有关视频和音频文件的文档时,似乎它只是为我提供了一种访问存储在手机上的文件的方式 - 而不是用于记录或拍照的实际触发器.

我错过了什么吗?

我怎么做我想要的?

extjs sencha-touch sencha-touch-2

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

如何在Ruby中动态创建2D数组?

因此,我正在解析一个URL,并希望使用Nokogiri获取页面中所有链接的列表。

但是我想将结果推回到二维数组中。

我现在正在这样做:

def my_list(url)
    root = Nokogiri::HTML(open(url))
    list = []

    root.css("a").each do |link|
        list << (link[:href])           
    end

end
Run Code Online (Sandbox Code Playgroud)

这给我的只是http链接。如果我这样做,list << link它将给我完整的<a>标签。

我想做的就是仅将链接的文本(可以使用link.text)说出来list[0][0],然后将href值(使用link[:href])推到另一个单元格说出来list[0][1]

我怎么做?

谢谢。

ruby nokogiri

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

我有一个运行40分钟的Ruby脚本,如何将其集成到Rails应用程序中?

我有一个抓取网站的Ruby脚本,需要40分钟.我想做的是将结果转储到数据库中,并能够对ActiveRecord数据进行常规处理.

  1. 如果我把它放在一个Rails应用程序中,并有一个启动脚本的"开始"按钮,它会超时吗?
  2. 理想情况下,我希望脚本每天至少运行一次 - 并更新数据库 - 所以我最好的选择是创建一个rake任务,还是有其他方法可以做到这一点?
  3. 如果我将它包装在Rails应用程序中,我应该在哪个文件夹中放置脚本以及接近它的最佳方法是什么?我不能把它放在模型文件中 - 因为这没有任何意义.
  4. 我之前从未做过任何"工作"类型的处理,但这听起来可能属于该范围.这样做时我还应该考虑其他什么?

编辑1:

另一个问题是,如果我将这个特定的Ruby脚本放在我的/lib目录中,我该如何让它与数据库进行交互?我通常与模型和控制器中的DB进行交互.如何在运行后将结果存储在我的数据库中?

ruby ruby-on-rails

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

这是有效的CSS吗?为什么或者为什么不?

.9-bucks {
    font-size:  60px;
}
Run Code Online (Sandbox Code Playgroud)

当我将我的应用程序推送到Heroku时,这是我得到的错误:

ActionView::Template::Error (Invalid CSS after ".": expected class name, was "9-bucks {"
2012-06-07T11:42:45+00:00 app[web.1]:   (in /app/app/assets/stylesheets/application.css)):
Run Code Online (Sandbox Code Playgroud)

css heroku ruby-on-rails-3

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