Tag: 路线

ruby on rails jquery没有调用正确的控制器动作

我阅读了当我开始发布这个问题时弹出的所有答案,但它们似乎没有解决我的问题。 我向控制器添加了一个名为get_results的新动作(除了通过脚手架创建的动作),但每次我在选择菜单中更改选项时,它都会指示我“编辑”动作,而不是“get_results”, 这是js $(function(){ $(‘.menu_class’).bind(‘change’, function(){ $.ajax(‘#{:controller => “my_tests”, :action => “get_results”}?param_one=’ + $(this).val()); }); }); 编辑:这是为我工作的js代码,谢谢罗宾的答案如下: $(function(){ $(‘.menu_class’).bind(‘change’, function(){ $.ajax({ url: “”, data: { param_one: $(this).val() } }); }); }); 这是我添加的动作(片段) def get_results # some stuff goes here respond_to do |format| if @my_test.update_attributes(params[:my_test]) format.html format.js else format.html { render :action => “update” } format.json […]

当我更改了data-bind =“delete”Rails时,为什么我的链接仍然使用Post提交

我有以下链接: 创建工具包后,我更改链接如下: 我更改了href和data-method,以便它应该提交给destroy动作。 但它仍然作为POST提交 为什么这样,我如何解决这个问题,以便将其作为“删除”提交?

从Rails 3升级后不允许使用Rails 4方法

我有一个现有的代码库,我试图从Rails 3.2升级到Rails 4.0 我有一个名为assets_controller的控制器,带有’create’方法,我的路由文件中有一个条目: resources :assets 在前端使用Jquery,如果我从一个浏览器向’/ assets’发送一个post请求,我得到405(Method Not Allowed): $.ajax({method: ‘POST’, data: asset, url: ‘/assets’ }); 这在Rails 3中运行得很好,我似乎无法弄清楚问题是什么。 更新: 这是我的控制器的简化版本: class AssetsController < ApplicationController skip_before_filter :verify_authenticity_token def create # params[:assets] is passed if a mass addition of assets (ie book) occurs assets = [] if params[:assets] assets = params[:assets] else assets.push params end last_asset_id […]