私はオブジェクトの編集アクションをレンダリングするためにlink_to_remoteを持っています。要求は思わRails:link_to_remote updateはビューをレンダリングしません
# GET /comments/1/edit
def edit
@comment = Comment.find(params[:id])
respond_to do |format|
format.html
format.js { render :action => "edit" }
end
end
:
= link_to_remote t("txt.edit"), :update => dom_id(comment), :url => edit_comment_path(comment.id)
コメントコントローラでの私の編集アクション:それがないすべてがこの応答で更新DOM要素
try { } catch (e) { alert('RJS error:\n\n' + e.toString()); alert(''); throw e }
ですが、私のリンクは、このようになりますログによればOKになる:
Processing CommentsController#edit (for 127.0.0.1 at 2009-04-08 18:55:36) [GET]
Session ID: 1d4b9b3d3319d5cd556d00d2e053b651
Parameters: {"authenticity_token"=>"5d70f9e5beded361ee7e87ee591512411e8f3eec", "id"=>"18"}
User Columns (2.0ms) SHOW FIELDS FROM `users`
User Load (0.5ms) SELECT * FROM `users` WHERE (`users`.`id` = 1) LIMIT 1
Account Columns (1.6ms) SHOW FIELDS FROM `accounts`
Account Load (0.2ms) SELECT * FROM `accounts` WHERE (`accounts`.`subdomain` = 'xxx') LIMIT 1
Comment Columns (1.7ms) SHOW FIELDS FROM `comments`
Comment Load (0.6ms) SELECT * FROM `comments` WHERE (`comments`.`id` = 18)
Rendering comments/edit
Completed in 30818ms (View: 2, DB: 7) | 200 OK [http://xx.xxx.rails/comments/18/edit?authenticity_token=5d70f9e5beded361ee7e87ee591512411e8f3eec]
私は間違って何をしていますか?助けてくれてありがとう!
更新: これはRJSテンプレートを使用して動作します。これが私が今解決した方法です。しかし、私はまだビューがレンダリングされるソリューションを好む。さもなければ、私はこの目的のためだけに部分を作成しなければなりません(私はrjsページ更新でビューをレンダリングできません - 少なくとも私は方法を知らない)。
私はhamlテンプレートですので、試してみてください:render:action => "edit.haml"? –
テンプレートのフルネームを使用してください。通常は 'action.mime.renderer'でなければならないので、 'edit.html.haml'はファイル名と 'render'に送信する内容の両方でなければなりません – AdminMyServer