系统堆栈错误 - 堆栈级别太深
SystemStackError - Stack Level Too Deep
我知道这里有很多系统堆栈错误问题...但每个问题和答案都是独一无二的。并且没有找到一个靠近我的。
我真的不明白为什么我会收到此错误...
我不需要视图,因为表单是通过 ajax 发送的。我验证了我的编码是否适用于使用 rails 控制台插入新记录。
我验证了路线:
request_user POST /users/:id/request(.:format) users#request
提交此表单时,我收到系统堆栈错误:
SystemStackError at /users/11940/request
========================================
> stack level too deep
actionpack (3.2.3) lib/action_dispatch/middleware/reloader.rb, line 70
----------------------------------------------------------------------
``` ruby
65 response = @app.call(env)
66 response[2] = ActionDispatch::BodyProxy.new(response[2]) { cleanup! }
67 response
68 rescue Exception
69 cleanup!
> 70 raise
71 end
72
73 def prepare! #:nodoc:
74 run_callbacks :prepare if validated?
75 end
```
App backtrace
-------------
Full backtrace
--------------
- actionpack (3.2.3) lib/action_dispatch/middleware/reloader.rb:70:in `'
JavaScript 通过 AJAX 提交
$("#user_feature_request").dialog({
autoOpen: false,
width: 500,
buttons: {
"Submit": function() {
var id = $("#request").val();
$.ajax({
url: "/users/" + id + "/request",
data: $("#request_form").serialize(),
type: "POST",
success: function (data) {
alert(data);
$("#user_feature_request").dialog("close");
},
error: function (jqXHR, textStatus, errorThrown) {
alert('error: ' + textStatus + ': ' + errorThrown);
}
});
return false;
},
"Cancel": function() {
$(this).dialog("close");
}
}
});
$("#request").on("click", function() {
$("#user_feature_request").dialog("open");
});
控制器
def request
user = params[:user]
r = Request.new
r.user_id = params[:id]
r.feature = user[:request]
r.comment = user[:comment]
r.repair = user[:issue]
r.save
end
形式:
<div class="main">
<div id="user_feature_request" title="Comment / Requested Features">
<form id="request_form">
<input id="user_id" name="user[id]" type="hidden" value="<%= current_user.id %>"></input>
Requested Feature:
<textarea cols="450" id="user_request" name="user[request]" rows="5"></textarea>
<br/>
Technical Issue:
<textarea cols="450" id="user_issue" name="user[issue]" rows="5"></textarea>
<br/>
Comments:
<textarea cols="450" id="user_comment" name="user[comment]" rows="5"></textarea>
</form>
</div>
</div>
这是
由于您的模型名称和/或控制器操作名称(Request
和request
)。这些是 Rails 中的保留字。
相关文章:
- 是什么让一个“;Uncaught RangeError:超过了最大调用堆栈大小“;错误(Chrome,在其他浏览器中显示
- Fresh Spark Install+Homestead上的Vue异步堆栈跟踪错误
- 日志:未捕获的范围错误:超过了最大调用堆栈大小
- 是否排除节点中错误堆栈的第一行?/节点中的自定义错误类型
- 未捕获的范围错误:setTimeout()超过了最大调用堆栈大小
- JavaScript继承:未捕获的范围错误:超过了最大调用堆栈大小
- 收到“范围错误: 超出最大调用堆栈大小”错误
- Chrome/jQuery未捕获范围错误:超过了最大调用堆栈大小(函数循环)
- 警告:字体加载过程中出错:轨道上的PDFJS超过了最大调用堆栈大小错误
- 如何在Chrome扩展内容脚本中获取错误堆栈跟踪
- AngularJS-范围错误:''之后超过了最大调用堆栈大小;应用程序启动
- Javascript V8复合错误堆栈格式
- parseInt(x,10)导致最大调用堆栈/过多递归错误
- 绑定到堆栈错误
- 系统堆栈错误 - 堆栈级别太深
- 尝试在解析 JS API 中创建新用户时的最大调用堆栈错误
- 添加“toJSON"JavaScript对象实例的方法导致最大调用堆栈错误
- Javascript堆栈错误
- Webview JavaScript调用堆栈错误
- ES6生成器:从iterator.throw(err)中跟踪堆栈错误