小编Ser*_*off的帖子

删除SimpleForm生成的选择字段的空白选项

我有这段代码:

= f.input :category, :as => :select, :label => false, :collection => Choices["Categories"]
Run Code Online (Sandbox Code Playgroud)

选择["类别"]只是key =>值对的散列.

SimpleForm生成一个包含所有必需选项的选择字段,但它也使第一个选项为空.
此空白选项存在于SimpleForm生成的所有选择字段中.

但我不想有一个空白的选择.有办法摆脱它吗?

有点像:allow_blank_option => false

我试图对这个属性进行存在验证,希望SimpleForm能够检测到它,但它没有帮助.

ruby-on-rails

46
推荐指数
1
解决办法
3万
查看次数

Java SE:打开网页并单击按钮


我有一个Java 7程序(使用WebStart技术,仅适用于Windows 7/8计算机).

我需要添加一个函数,以便我的程序单击具有已知URL(https)的页面上的按钮.

有些人建议使用WebKit SWT,但我去了他们的网站,他们说该项目已经停止.(http://www.genuitec.com/about/labs.html)

其他人说JxBrowser是唯一的选择,但看起来它超过1300美元这是疯了.(http://www.teamdev.com/jxbrowser/onlinedemo/)

我正在寻找简单,免费,轻量级的东西,能够打开HTTPS链接,解析HTML,通过DOM访问按钮并单击它.也许是一些JavaScript,以防有JS处理程序.

谢谢你的帮助.

java

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

如何让Sidekiq在Heroku上工作?

这是我第一次尝试让Redis在Heroku上工作.

我添加了一个工作器dyno(就在今天,所以还没有支付),添加了RedisToGo Nano附加组件,在我的本地机器上测试了后台作业,并将应用程序推送到了heroku.

heroku ps
Run Code Online (Sandbox Code Playgroud)

=== web: `bundle exec rails server -p $PORT`
web.1: up 2013/03/03 18:26:09 (~ 37m ago)

=== worker: `bundle exec rake jobs:work`
worker.1: crashed 2013/03/03 19:02:15 (~ 1m ago)
Run Code Online (Sandbox Code Playgroud)

Sidekiq Web Interface说一个作业已入队,但零处理或失败.

我猜这是因为我的工作人员dyno坠毁了.

有没有我不知道的noob错误?

(例如,我需要运行一些命令才能开始收听后台工作等)

heroku logs --tail 没有显示任何错误,所以我不明白为什么我的工人dyno发生冲突.

ruby-on-rails heroku

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

用字符串中的撇号替换单引号(Ruby)

我的用户有时输入'看起来像撇号()的符号而不是撇号(),这会导致数据库出现问题.

我试着gsub像这样替换它们:

result.gsub(/\‘/, "'")
result.gsub(/‘/, "'")
Run Code Online (Sandbox Code Playgroud)

这两个选项都不起作用 - 得到错误:

syntax error, unexpected $end, expecting ')'
  return result.gsub(/\‘/, "'").gsub("’", "'")
                          ^
Run Code Online (Sandbox Code Playgroud)

它们是由Ruby保留的吗?我该如何更换它们?

ruby

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

如何获取别人的拉取请求(修复它)

我们是一个程序员团队.

我们有一个项目的主要回购.

我们团队中的一位程序员向该回购提出了拉取请求.

我需要解决他的拉动请求.而且我不是主要的回购所有者.

我如何获取他的代码?

当我去他的帐户 - 我没有看到该回购的分支(可能它是私人的).

它是这样完成的吗?:

$ git remote add <name> <source> # for <source> - link to his pull request
$ git fetch <name>
$ git merge <name>/<branch>
Run Code Online (Sandbox Code Playgroud)

git github

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

RSpec指定(:items).should eq([item])返回nil

我对RSpec很新,显然做错了.

拥有索引操作的基本控制器:

class TransactionsController < ApplicationController

  before_filter :authenticate_user!
  def index
    @transactions = current_user.transactions
    respond_to do |format|
      format.html { render layout: "items" } # index.html.erb
      format.json { render json: @transactions }
    end
  end
end
Run Code Online (Sandbox Code Playgroud)

并对Index操作进行默认的RSpec测试.

require 'spec_helper'

describe TransactionsController do
   describe "GET index" do
     it "assigns all transactions as @transactions" do
       transaction = FactoryGirl.create(:transaction)
       get :index
       assigns(:transactions).should eq([transaction])
     end
   end
end
Run Code Online (Sandbox Code Playgroud)

所以所有工作,除了该行assigns(:transactions).should eq([transaction])返回nil,所以我得到这个错误:

Failure/Error: assigns(:transactions).should eq([transaction])

   expected: [#<Transaction id: 1, user_id: 1, text: "some transaction", date: "2013-02-02", money: #<BigDecimal:b8a8e90,'0.999E1',18(18)>, …
Run Code Online (Sandbox Code Playgroud)

ruby-on-rails

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

Carrierwave:如何验证图像是否已附加?(上传或remote_url)

我试图确保图片模型的每个实例都附加了一个文件。

换句话说 - 表单中有两个字段:

:file
:remote_file_url
Run Code Online (Sandbox Code Playgroud)

我希望用户至少填写其中一项。

当我验证 :file 的存在并提交 remote_file_url 而不是 file 时 - 然后它会给出验证错误。

我现在找到的唯一方法是这样做:

class Picture < ActiveRecord::Base
  validate :file_xor_remote_file_url

  private    
  def file_xor_remote_file_url
    if !(file.blank? ^ remote_file_url.blank?)
      errors.add(:base, "Specify a file to upload, or file URL, not both")
    end
  end

end
Run Code Online (Sandbox Code Playgroud)

ruby-on-rails carrierwave

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

测试Sidekiq收到正确的延迟工作

在我的用户模型中,我正在调用一个延迟方法:

class User < ActiveRecord::Base
  def self.import_items
    ...
    User.delay.keep_only_user_cars(1) # "1" is just for testing
  end
end
Run Code Online (Sandbox Code Playgroud)

而我正试图像这样测试它(使用rspec-sidekiq gem):

expect(Sidekiq::Extensions::DelayedClass).to have_enqueued_job("keep_only_user_cars", 1)     
Run Code Online (Sandbox Code Playgroud)

这就是我得到的:

Failure/Error: expect(Sidekiq::Extensions::DelayedClass).to have_enqueued_job("keep_only_user_cars", 1)
  expected to have an enqueued Sidekiq::Extensions::DelayedClass job with arguments ["keep_only_user_cars", 1] but none found
  found: [["---\n- !ruby/class 'User'\n- :keep_only_user_cars\n- - 1\n"]]
Run Code Online (Sandbox Code Playgroud)

哪个基本上有效,只是有点不同的格式.

如何修复此测试以确保Sidekiq正好使用此属性接收此方法?

rspec ruby-on-rails sidekiq rspec-sidekiq

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

对于PostgreSQL中的布尔数据类型,输出"是/否"而不是"t/f"

如何进行返回yes/no而不是t/f(true/false)的查询?

目前的解决方案是

SELECT credit_card_holders.token IS NOT NULL AS premium
Run Code Online (Sandbox Code Playgroud)

我发现了一个Ruby解决方案: Rails(或Ruby):Yes/No而不是True/False

但如果可能的话,宁愿在PostgreSQL中这样做.

sql postgresql boolean

4
推荐指数
3
解决办法
5429
查看次数

Linux Bash:while循环无法遍历文件(行除以\ r \n)

我有这个循环:

while read p; do echo $p; done < ~/Documents/tempfile
Run Code Online (Sandbox Code Playgroud)

哪个必须遍历每一行~/Documents/tempfile.

当该文件中的行被\r\n- 循环分开时,只能回显第一行.

当我手动编辑文件(Enter在每行的末尾点击) - 循环可以回显所有行.

Bash是否使用别的东西而不是\r\n

发现一个问题:

我还必须\r\n在文件末尾添加.

之后它开始返回所有行.

谢谢你们.

bash

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