加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

Ruby on Rails和jeditable(jquery)

发布时间:2020-12-16 20:17:19 所属栏目:百科 来源:网络整理
导读:有没有人得到jQuery插件 jeditable在Rails应用程序中正常运行.如果是这样,你能分享一些关于如何设置的提示吗?我在创建“提交网址”时遇到麻烦. IIRC,你不能简单地从javascript中调用ruby代码(请让我错了:-).你的意思是RJS?不是限于原型吗?我正在使用jQuer
有没有人得到jQuery插件 jeditable在Rails应用程序中正常运行.如果是这样,你能分享一些关于如何设置的提示吗?我在创建“提交网址”时遇到麻烦.

IIRC,你不能简单地从javascript中调用ruby代码(请让我错了:-).你的意思是RJS?不是限于原型吗?我正在使用jQuery.

更新:
呃…..这个问题回来了,在此期间切换到一个不同的解决方案.但是,IIRC我的主要问题如下:

我正在使用RESTful资源.所以让我们来模拟一个博客,从而拥有资源“帖子”.如果我想编辑一个帖子(例如ID为8的帖子),我的更新将通过HTTP发送到具有HTTP动词POST的URL http://my.url.com/posts/8.然而,这个URL是在我的Rails代码中构建的.那么我该如何将我的submit-url转入我的jQuery代码?由于这是RESTful代码,因此我的更新URL将随着每个帖子而改变.

解决方法

这是我如何使用我的休闲Rails应用(2.2.2)连线JEditable(1.6.2):

内联形式:

<div id="email_name"><%= h( @email.name ) %></div>

$('#email_name').editable( <%= email_path(@email).to_json %>,{
  name: 'email[name]',method: 'PUT',submitdata: {
    authenticity_token: <%= form_authenticity_token.to_json %>,wants: 'name'
  }
});

控制器:

def update
  @email = Email.find( params[:id] )
  @email.update_attributes!( params[:email )
  respond_to do |format|
    format.js
  end
end

update.js.erb

<%=
    case params[:wants]
    when 'name' then h( @email.name )
    # add other attributes if you have more inline forms for this model
    else ''
    end
%>

这个switch语句有点笨重.如果JEditable在默认情况下保存提交的值,那么如果ajax请求成功并且没有返回任何东西,那将是很好的.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读