Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ruby-on-rails-3/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Routing Rails3自定义路由格式_Routing_Ruby On Rails 3 - Fatal编程技术网

Routing Rails3自定义路由格式

Routing Rails3自定义路由格式,routing,ruby-on-rails-3,Routing,Ruby On Rails 3,在routes.rb中,我被迫添加: post 'admin/user_update' 要使我的表单标签正常工作: form_tag( { :action => :update_user, :id => @user.id }, :remote => :true ) 现在我得到: Template is missing Missing template admin/update_user with {:handlers=>[:erb, :rjs, :builder, :rhtml,

在routes.rb中,我被迫添加:


post 'admin/user_update'

要使我的表单标签正常工作:


form_tag( { :action => :update_user, :id => @user.id }, :remote => :true )

现在我得到:


Template is missing

Missing template admin/update_user with {:handlers=>[:erb, :rjs, :builder,
:rhtml, :rxml], :formats=>[:html], :locale=>[:en, :en]} in view paths
"/rails/test/app/views"

我的模板是update_user.js.erb:


$('#user-edit-<%= @user.id %>').html("&nbsp;");
$('#tr-user-edit-<%= @user.id %>').hide();


$(“#用户编辑-”).html(“”);
$(“#tr user edit-”).hide();
如何让路由接受我想要使用js处理请求

如何将js添加到:格式


请不要在回复中使用“资源”一词。我知道这是一个自定义路由。

如果我理解正确,这是一个jquery问题(尽管您从未明确提到jquery)

尝试添加:

$(document).ready(function() {
    $.ajaxSetup({ 
        'beforeSend': function(xhr) {xhr.setRequestHeader("Accept", "text/javascript")}
    });
});
添加到application.js文件。

您可以添加

匹配“更新用户/:id”=>“管理员更新用户”,:as=>:更新用户,:via=>:put

到你的路线

鉴于此,你可以这样做

form_for(@user, :url => update_user_path(@user.id), :remote => true) do |f| . . . 表单_for(@user,:url=>update_user_path(@user.id),:remote=>true)do | f| . . . 我认为根据请求类型,它应该选择适当的格式文件,否则 你可以在控制器代码之后

def update_user . . . respond_to do |format| format.js end end def更新用户 . . . 回应待办事项|格式| format.js 结束 结束