Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ajax/6.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
Ajax Rails 3-呈现部分和错误“;未定义的局部变量或方法;_Ajax_Ruby On Rails 3_View_Render_Partial - Fatal编程技术网

Ajax Rails 3-呈现部分和错误“;未定义的局部变量或方法;

Ajax Rails 3-呈现部分和错误“;未定义的局部变量或方法;,ajax,ruby-on-rails-3,view,render,partial,Ajax,Ruby On Rails 3,View,Render,Partial,我在图库中有一张照片(PhotosController),我想在每张照片中添加一条评论。在照片声明中,我添加了一个用于呈现评论的部分+用于添加新评论的表单 我的问题是,当我发送带有新注释的表单时,会出现呈现错误: **NameError (undefined local variable or method `photo' for #<CommentsController:0x00000100ce0ad0>)**: 这一行有几十个: Rendered photos/_photo

我在图库中有一张照片(PhotosController),我想在每张照片中添加一条评论。在照片声明中,我添加了一个用于呈现评论的部分+用于添加新评论的表单

我的问题是,当我发送带有新注释的表单时,会出现呈现错误:

**NameError (undefined local variable or method `photo' for #<CommentsController:0x00000100ce0ad0>)**:
这一行有几十个:

  Rendered photos/_photo_comments.js.erb (562.2ms)
最后一个呢

Completed 500 Internal Server Error in 580ms

渲染有什么问题?我无法从部分JS文件中呈现部分html文件?

image\u tag photo.photo.url(:thumb)
在控制器中,您有:

:locals => { :photo => photo }
但是变量
photo
不存在。应该是:

:locals => { :photo => @comment.photo }

是的,因为我在表格中有照片列、照片列、文件名、照片列、内容列、类型-这是正确的,图像显示正确,但是当我想用AJAX渲染部分时,我得到了上面的错误…谢谢,这解决了我的问题。我试图通过AJAX呈现注释语句,但我得到了错误“堆栈级别太深”-你知道吗,我可能会忘记什么?(我更新了我的问题)。谢谢
$('#photo_comment').html("<%= escape_javascript(render('photos/photo_comments')) %>");
ActionView::Template::Error (stack level too deep):
  activesupport (3.2.1) lib/active_support/notifications/instrumenter.rb:23
  Rendered photos/_photo_comments.js.erb (562.2ms)
Completed 500 Internal Server Error in 580ms
:locals => { :photo => photo }
:locals => { :photo => @comment.photo }