小编pol*_*are的帖子

为什么Rails控制台说"无法加载这样的文件 - readline"?

我是Ruby on Rails的新手,我正在使用RVM来管理Ruby版本.

我的笔记本电脑安装了Ruby1.8.7,但我的项目是使用RVM,Ruby1.9.3和Rails 3.2.11.

我无法运行rails c或不运行rails console它给我以下错误:

/home/phil/.rvm/rubies/ruby-1.9.3-p392/lib/ruby/1.9.1/irb/completion.rb:9:in `require': cannot load such file -- readline (LoadError)
from /home/phil/.rvm/rubies/ruby-1.9.3-p392/lib/ruby/1.9.1/irb/completion.rb:9:in `<top (required)>'
from /home/phil/.rvm/gems/ruby-1.9.3-p392/gems/railties-3.2.11/lib/rails/commands/console.rb:3:in `require'
from /home/phil/.rvm/gems/ruby-1.9.3-p392/gems/railties-3.2.11/lib/rails/commands/console.rb:3:in `<top (required)>'
from /home/phil/.rvm/gems/ruby-1.9.3-p392/gems/railties-3.2.11/lib/rails/commands.rb:38:in `require'
from /home/phil/.rvm/gems/ruby-1.9.3-p392/gems/railties-3.2.11/lib/rails/commands.rb:38:in `<top (required)>'
from script/rails:6:in `require'
from script/rails:6:in `<main>'
Run Code Online (Sandbox Code Playgroud)

ruby rails-console ruby-on-rails-3.2

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

Ruby prawn-table gem:如何选择表的最后一行?

我有一个像下面这样的虾表:

table info_rows do
  row(0).font_style = :bold
  row(0).align = :center
  row(0).borders = [:top, :bottom, :left, :right]
  row(1..50).borders = [:left, :right]
  self.header = true
  self.row_colors = ['EEEEEE', 'FFFFFF']
  self.column_widths = col_sizes
end
Run Code Online (Sandbox Code Playgroud)

我需要在最后一行放置一个底部边框,但我不确定如何检测循环中的最后一行?类似的东西(以下if语句内部循环显然不起作用/只是示例)...

table info_rows do
  row(0).font_style = :bold
  row(0).align = :center
  row(0).borders = [:top, :bottom, :left, :right]
  row(1..50).borders = [:left, :right]

  if row.last
    ?(?).borders = [:bottom, :left, :right]
  end

  self.header = true
  self.row_colors = ['EEEEEE', 'FFFFFF']
  self.column_widths = col_sizes
end 
Run Code Online (Sandbox Code Playgroud)

任何想法都是最受欢迎的.

我正在使用Ruby - 2.1.2

ruby-on-rails prawn ruby-2.1

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

npm 未在项目目录中创建 node_modules 文件夹

我正在做一个小型的 Sinatra 项目,我想使用 Gulp。

我安装了node(v0.12.0),npm(2.13.1),gulp(3.9.0)。我在我的项目目录中,但是当我尝试安装像“npm install gulp-sass --save-dev”这样的包时,它不会在我的项目目录中创建任何“node_modules”文件夹。它似乎正在将软件包安装在我的用户主目录中。我做错了什么吗?

node.js npm

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

Rails - 单击按钮发送电子邮件

导轨 4.1.1

我有一个 OrdersController,在订单上显示我有的操作......

订单控制器.rb

def show
  @order = Order.find(params[:id])
  @client = Client.find(@order.client_id)

  if request.post?
    OrderMailer.order_send(@client, @order).deliver
    flash[:notice] = 'Order details sent!'
    redirect_to order_path(@order.id)
  end
end
Run Code Online (Sandbox Code Playgroud)

然后我的观点是...

(显示.haml)

= button_to "Send", @order
Run Code Online (Sandbox Code Playgroud)

如果我从 if 语句中取出“OrderMailer”并访问显示/订单页面,则电子邮件会重复发送,直到我关闭开发服务器,这样我就知道邮件程序部分发送/工作正常。

我只是不确定如何将按钮点击/发送电子邮件绑定在一起?我需要一条路线,但如果我已经有订单/显示页面的路线,则不确定如何将其绑定在一起?

路线.rb

resources :orders, :path => 'orders'
Run Code Online (Sandbox Code Playgroud)

actionmailer ruby-on-rails-4

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