小编Dex*_*Dex的帖子

Rails路由命名空间和form_for

我的routes.rb中有命名空间

  namespace :businesses do
    resources :registration
  end
Run Code Online (Sandbox Code Playgroud)

我的控制器位于business/registration_controller子目录中.

def new
  @business = Business.new
end
Run Code Online (Sandbox Code Playgroud)

在我看来,我想这样做,form_for @business do |f| ...但我收到以下错误:

No route matches {:controller=>"businesses", :action=>"create"}

重启服务器,我也得到了这个:

undefined methodbusiness_path'for#<#:0x10339bb20>`

这是我的佣金路线:

                   home_index GET    /home/index(.:format)                       {:action=>"index", :controller=>"home"}
             new_user_session GET    /users/sign_in(.:format)                    {:action=>"new", :controller=>"devise/sessions"}
                 user_session POST   /users/sign_in(.:format)                    {:action=>"create", :controller=>"devise/sessions"}
         destroy_user_session GET    /users/sign_out(.:format)                   {:action=>"destroy", :controller=>"devise/sessions"}
                user_password POST   /users/password(.:format)                   {:action=>"create", :controller=>"devise/passwords"}
            new_user_password GET    /users/password/new(.:format)               {:action=>"new", :controller=>"devise/passwords"}
           edit_user_password GET    /users/password/edit(.:format)              {:action=>"edit", :controller=>"devise/passwords"}
                user_password PUT    /users/password(.:format)                   {:action=>"update", :controller=>"devise/passwords"}
     cancel_user_registration GET    /users/cancel(.:format)                     {:action=>"cancel", :controller=>"devise/registrations"}
            user_registration POST   /users(.:format)                            {:action=>"create", …
Run Code Online (Sandbox Code Playgroud)

ruby-on-rails

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

猴子修补在Rails 3

在Rails 3中使用Monkey Patch的首选方法是什么?

我只想在String类中添加一个方法.我更关注文件的放置位置.

ruby-on-rails

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

在整个站点中使用SSL

我只考虑在整个网站上使用SSL,而不仅仅是为HTTPS访问选择了一些页面.

这会有什么缺点?

编辑2014年8月7日

谷歌现在考虑使用HTTPS进行排名,因此您绝对应该在整个网站上使用SSL:

http://googleonlinesecurity.blogspot.com/2014/08/https-as-ranking-signal_6.html

ssl https

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

Rails 3:验证IP字符串

在Rails 3中,是否有内置的方法来查看字符串是否是有效的IP地址?

如果没有,最简单的验证方法是什么?

regex validation ruby-on-rails ip-address

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

从控制器中删除Cookie

我使用jQuery在我的表单中设置了一些cookie值.我可以通过该cookies方法在我的Rails控制器中读取它们.当我打电话时cookies.delete(:my_key),当我cookies再次打电话时,它们似乎已经消失了.但是当我重新加载页面时,cookie又回来了.

有没有办法从我的控制器内部删除好的cookie?

编辑

这很奇怪,因为我正在查看响应标头,它们似乎正在删除cookie.也许是因为它是302请求?

Set-Cookie: my_key=; path=/; expires=Thu, 01-Jan-1970 00:00:00 GMT
Run Code Online (Sandbox Code Playgroud)

cookies ruby-on-rails

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

使用jQuery以字母顺序动态插入列表

我有两个彼此相邻的有序列表.

当我从一个列表中取出一个节点时,我想按字母顺序将其插入到另一个列表中.问题是,我想只取出一个元素并将其放回另一个列表而不刷新整个列表.

奇怪的是,当我插入右边的列表时,它工作正常,但当我插回到左侧的列表中时,顺序永远不会正确.

我也尝试将所有内容读入一个数组并在那里进行排序,以防万一()方法没有按照它们显示的顺序返回内容,但我仍然得到相同的结果.

这是我的jQuery:

function moveNode(node, to_list, order_by){

    rightful_index = 1;
    $(to_list)
        .children()
        .each(function(){
            var ordering_field = (order_by == "A") ? "ingredient_display" : "local_counter";

            var compA = $(node).attr(ordering_field).toUpperCase();
            var compB = $(this).attr(ordering_field).toUpperCase();
            var C = ((compA > compB) ? 1 : 0);
            if( C == 1 ){
                rightful_index++;
            }
        });

    if(rightful_index > $(to_list).children().length){
        $(node).fadeOut("fast", function(){
            $(to_list).append($(node));
            $(node).fadeIn("fast");
        }); 
    }else{
        $(node).fadeOut("fast", function(){
            $(to_list + " li:nth-child(" + rightful_index + ")").before($(node));
            $(node).fadeIn("fast");
        });
    }

}
Run Code Online (Sandbox Code Playgroud)

这是我的html的样子:

<ol>
<li ingredient_display="Enriched Pasta" ingredient_id="101635" …
Run Code Online (Sandbox Code Playgroud)

jquery list dynamic

15
推荐指数
1
解决办法
9695
查看次数

Rails 3初始化命令

有人可以指出我正确的方向为rails模块实例化的顺序.

我想要找到的主要内容是:

1)何时加载宝石?

2)何时加载config/initializers/*?

3)什么时候在routes.rb中命名路由被处理?

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

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

11
推荐指数
1
解决办法
8734
查看次数

处理控制器中的唯一记录异常

我有一个名为Subscription的模型,它在字段[:email,:location]上有唯一索引.这意味着每个位置可以订阅一个电子邮件地址.

在我的模型中:

class Subscription < ActiveRecord::Base
  validates :email, :presence => true, :uniqueness => true, :email_format => true, :uniqueness => {:scope => :location}
end
Run Code Online (Sandbox Code Playgroud)

在我的创建方法中.我想以ActiveRecord::RecordNotUnique不同于常规错误的方式处理异常.我如何将其添加到此通用创建方法中?

  def create
    @subscription = Subscription.new(params[:subscription])
    respond_to do |format|
      if @subscription.save
        format.html { redirect_to(root_url, :notice => 'Subscription was successfully created.') }
      else
        format.html { render :action => 'new' }
      end
    end
  end
Run Code Online (Sandbox Code Playgroud)

exception-handling ruby-on-rails

11
推荐指数
5
解决办法
2万
查看次数

在后台启动AVAssetExportSession

我的应用程序做了一些处理,在某些时候它需要调用AVAssetExportSession.

如果会话已经开始,然后我对应用程序进行后台处理,一切都正常完成.不过,如果我的背景之前调用应用程序exportAsynchronouslyWithCompletionHandler.我收到此错误:

AVAssetExportSessionStatusFailed Error Domain=AVFoundationErrorDomain Code=-11800 "The operation could not be completed" UserInfo=0x1e550db0 {NSLocalizedFailureReason=An unknown error occurred (-12985), NSUnderlyingError=0x1e574910 "The operation couldn’t be completed. (OSStatus error -12985.)", NSLocalizedDescription=The operation could not be completed}

是否可以在后台启动AVAssetExportSession?

avfoundation ios avassetexportsession

9
推荐指数
1
解决办法
3233
查看次数