(请注意我使用的是Kohana 3.1.0,因此框架会自动路由以下所有网址)
我正在使用以下(jQuery)从index.php / functions / submit
请求JSON对象 <script type="text/javascript">
$(document).ready(function(){
$("#submit_enemy").submit(function(e){
e.preventDefault();
var query = $(this).serialize();
$.getJSON('http://arflux-rpg.com/game/index.php/functions/submit', query, function(data){
if (data.success == true)
{
$('#messages').HTML("<div style='color: #00CE06;'>Success. Enemy \'" + data.name + "\' created.</div>");
}
else
{
$('#messages').HTML("<div style='color: #f00;'>Error: " + data.err + "</div>");
}
});
$('#messages').show(500).fadeOut(1000);
$('#form_content').show(500);
});
});
</script>
当URL被路由时,它会导致以下PHP代码:
http://pastie.org/2104063
我有什么遗失的吗?
答案 0 :(得分:1)
看起来您的后端无法找到正确的渲染视图:
throw new Kohana_View_Exception('The requested view :file could not be found', array( //etc
答案 1 :(得分:0)
您已经扩展了模板控制器(Controller_Template
),因为它无法找到名为“template”的视图文件(默认值),因此会抛出异常。
(我在浏览器中访问了json URL以查看此内容)
切换到仅展开Controller
应修复它。
答案 2 :(得分:0)
在action_submit函数中,您必须设置$this->auto_render = false;
您可以使用响应对象,而不是回显生成的json对象:$this->response->body(json_encode($return));