我有一个图像image.jpg,我想放在每页左下角的页脚.我目前正在这样做,使用Ruby 1.9.3和prawn gem来创建PDF,如下所示:
start_new_page
image "image.jpg", :at => [0,30]
Run Code Online (Sandbox Code Playgroud)
这有两个问题:
1)我正在动态创建页面,我需要将图像放在所有页面上.由于我永远不知道将创建多少页面,我不知道如何在每个页面上放置图像.
2)我的PDF中的表格被写在徽标的顶部,导致徽标不可见.
我在示例中找到了此代码段:
number_pages "<page> in a total of <total>", { :start_count_at => 0, :page_filter => :all, :at => [bounds.right - 50, 0], :align => :right, :size => 14 }
Run Code Online (Sandbox Code Playgroud)
这将在每个页面上放置文本,动态地按照我想要的方式; 但是,它不适用于图像.
如何在文档中的每个页面的左下角放置图像?
我需要验证我的:email属性是否包含特定属性 - @kodak.com.
我怎样才能做到这一点?我正在使用Rails 4.
就像是:
validates_inclusion_of :email, '@kodak.com'
我偶尔会遇到一些意外错误,例如超时错误,503错误等.有些错误我甚至不知道我可能收到的错误.做以下事情我无法解释所有这些:
rescue Timeout::Error => e
Run Code Online (Sandbox Code Playgroud)
救援也是一个可怕的想法Exception.
我可以使用哪种替代方案?当出现错误时,我希望我的代码能够拯救所有这些代码; 如果没有错误,我需要避免它.我希望能够杀死我的脚本但不会跳过语法错误等.
我觉得这应该很容易,我只是碰壁了.
我需要遍历一个数组,直到满足条件.例如:
count = 0
array = ["","","test","demo"]
Run Code Online (Sandbox Code Playgroud)
我想循环遍历此数组递增计数1,直到找到第一个非空值.所以我想要索引值"test",但是当"test"达到时我想停止循环.
另外,作为旁注,我怎样才能找到数组中第一个非空值的索引?我想知道这两种方法,因为它们都有潜在的应用.
我有一个数组:
array = ["0:00:31", "0:00:52", "0:01:05", "0:00:55", "0:01:33", "0:00:05", "0:00:01",
"0:05:10", "0:02:40", "0:03:03", "0:01:33", "0:00:00"]
Run Code Online (Sandbox Code Playgroud)
我需要平均数组中不等于的所有时间"0:00:00"."0:00:00"应该被抛弃.
最好的方法是什么?我正在循环遍历数组,删除所有0:00:00值,将字符串转换为整数并做一个平均值 - 但它似乎是我想要做的很多代码.
我正在使用postgresql并在我的本地开发环境下运行.我将我的应用程序部署到Heroku,现在我需要设置heroku来使用数据库就像我在本地一样.
在本地,我会运行这个:
rake db:create
rake db:migrate
Run Code Online (Sandbox Code Playgroud)
在heroku上,我尝试了同样的事情:
heroku run rake db:create
Run Code Online (Sandbox Code Playgroud)
但是,这会返回此错误:
FATAL: permission denied for database "postgres"
DETAIL: User does not have CONNECT privilege.
Couldn't create database for {"adapter"=>"postgresql", "username"=>"stegjyxfak", "password"=>"wB-Yfh450945jI5UrnFjxdwZ_o4N5", "port"=>5432, "database"=>"d64phj348vgdg5hm", "host"=>"ec2-107-20-191-205.compute-1.amazonaws.com"}
Run Code Online (Sandbox Code Playgroud)
我应该运行什么来设置我的heroku数据库?我使用的是Rails 4.0,如果它是相对的.
我有以下内容:
a_disposition = [nil,'test','demo']
a_volume = a_disposition.count{|x| x != nil}
Run Code Online (Sandbox Code Playgroud)
我想要计算所有非NOT nil和NOT的值'test'.什么是红宝石的说法count where x is not nil and x is not 'test'?我正在使用ruby 2.0.
我有以下代码:
def csv_to_array(file)
csv = CSV::parse(file)
fields = csv.shift
array = csv.collect { |record| Hash[*fields.zip(record).flatten] }
end
Run Code Online (Sandbox Code Playgroud)
这将创建一个哈希数组,并使用逗号分隔值正常工作.我试图复制此代码为制表符分隔文件.目前,当我在我的制表符分隔文件上运行上面的代码时,我得到这样的东西:
array[0] = {"First Name\tLast Name\tCode\t"=>"Luigi\tSmith\t1406\t"}
Run Code Online (Sandbox Code Playgroud)
因此,每个数组对象都是预期的散列,但它有一个键值对 - 整个制表符分隔的标题行是键,单个数据行是值.
如何更改此代码以返回具有单个键值对的哈希数组,每列的标题映射到该列的行值?
我一直在使用Rubymine和Git进行raketask.我一直在使用SourceTree将我的更改推送到github.
我不小心在源代码树中为我正在处理的文件选择了"删除"选项.这种方法显然使文件"无可挽回地丢失",这并没有给我太多希望.反正有没有恢复文件?它还没有提交也没有推到github,而且文件不在我当地的垃圾箱里.
我在我的模型的初始化方法中有以下内容:
@home_phone = contact_hash.fetch('HomePhone')
Run Code Online (Sandbox Code Playgroud)
但是,有时候我需要这个:
@home_phone = contact_hash.fetch('number')
Run Code Online (Sandbox Code Playgroud)
此外,有时这些都不是真的,我将需要该home_phone属性为空.
如何在不创建如此大循环的情况下编写出来:
if contact_hash.has_key?('HomePhone')
@home_phone = contact_hash.fetch('HomePhone')
elsif contact_hash.has_key?('number')
@home_phone = contact_hash.fetch('number')
else
@home_phone = ""
end
Run Code Online (Sandbox Code Playgroud)