我有控制器:
class AccountController < ApplicationController
def index
end
private
def current_account
@current_account ||= current_user.account
end
end
Run Code Online (Sandbox Code Playgroud)
如何current_account
使用rspec 测试私有方法?
PS我使用Rspec2和Ruby on Rails 3
我希望用户只使用一个连接到用户会话的订单.所以我为订单设置了奇异的资源
routes.rb中:
resource :order
Run Code Online (Sandbox Code Playgroud)
意见/命令/ new.html.erb:
<%= form_for @order do |f| %>
...
<% end %>
Run Code Online (Sandbox Code Playgroud)
但是当我打开新的订单页面时,我收到一个错误:
undefined method `orders_path`
Run Code Online (Sandbox Code Playgroud)
我知道,我可以设置:url => order_path
在form_for
,但什么是解决这一冲突的真正方法是什么?
在我的应用程序中我有这样的代码:
File.open "filename", "w" do |file|
file.write("text")
end
Run Code Online (Sandbox Code Playgroud)
我想通过rspec测试这段代码.这样做的最佳做法是什么?
我想通过API提供服务,通过一些id提供有关城市(在任何国家/地区)的一些信息.
我应该选择什么作为城市的身份证?是否存在城市识别的ISO标准?如果是这样,我可以在哪里获得城市ID列表?
我发现 mysql2 gem.它适用于ruby 1.9和utf8编码(与mysql gem相反).
但我怀疑.有人在生产中使用这个宝石吗?性能测试怎么样?它比mysql gem快吗?它稳定吗?
我正在决定如何组织URL并将语言环境放入其中.我有两个选择:
从一侧example.com/en/page
看起来更好,更紧凑example.com/page?locale=en
.从另一方面,我们有两个URL example.com/en/page
,example.com/ru/page
一个资源有两个表示.当然,如果example.com/page?locale=en
我们的一个资源也有两个URL,但根据我的口味它稍微有点REST.
什么是最佳做法?你在用什么?为什么?
我https
通过ansible配置了nginx安装和配置(以及为站点设置SSL证书).SSL证书使用密码短语.
我想写一个重启nginx的ansilbe任务.问题是如下.
通常情况下,内部有https站点的nginx会PEM pass phrase
在重启时询问.Ansible在执行playbook期间不要求该密码短语.
有解决方案将解密的证书和密钥存储在某个私人目录中.但我真的不想把我的证书和密钥留在未加密的地方.
如何通过重启期间将密码传递给nginx(或openssl)ansible
?完美的场景如下:
vars_promt
).另一种选择是使用安全保险库.PEM pass phrase
,ansible将密码传递给nginx.可能吗?
我在routes.rb中有这样的行:
scope "/:subdomain/" do
resource :order, :only => [:new, :create, :show, :update, :edit, :destroy] do
get :cancel, :on => :member
put :counter, :on => :member
end
end
Run Code Online (Sandbox Code Playgroud)
例如,这是典型的网址:http://mydomain.com/some_subdomain/order/new.此url映射到具有params [:subdomain] ="some_subdomain"的订单控制器的新操作.我想使用命名路由new_order_url(:subdomain =>"some_subdomain").
但我想将http://mydomain.com/order/new映射到订单控制器,动作新的和params [:subdomain] ="default".我想为这样的url使用命名路由new_order_url.
这样做的最佳做法是什么?
使用Rails 3我想使用X.509证书来签署部分电子邮件.在如何从ActionMailer发送签名电子邮件的 Rails 2中有一个当前存在的答案?但它不适用于Rails 3.
是否可以通过Rails 3中的ActionMailer签署电子邮件?如果无法做到这一点,是否可以在ActionMailer创建后通过sendmail签署电子邮件?
请帮我.我糊涂了.我知道如何编写模型的状态驱动行为,但我不知道我应该在规范中写什么...
我的model.rb文件看
class Ratification < ActiveRecord::Base
belongs_to :user
attr_protected :status_events
state_machine :status, :initial => :boss do
state :boss
state :owner
state :declarant
state :done
event :approve do
transition :boss => :owner, :owner => :done
end
event :divert do
transition [:boss, :owner] => :declarant
end
event :repeat do
transition :declarant => :boss
end
end
end
Run Code Online (Sandbox Code Playgroud)
我使用 state_machine gem.
拜托,告诉我课程.