【发布时间】:2013-05-22 18:23:08
【问题描述】:
在 laravel 框架中使用 php。我有一个删除请求来删除我网站上的一个文件条目,它在本地运行良好,但在我的网络服务器上却失败了。
// Ajax call
$.ajax({
url: BASE+'/contests/any/entries/any',
type: 'DELETE',
data: {
entry_id : entry_id
},
success: function() {
$(".entry-item#"+entry_id).remove();
}
});
我的路线:
Route::delete('contests/(:any)/entries/(:any)', 'entry@destroy');
控制器方法:
public function delete_destroy() {
$entry = Entry::find(Input::get('entry_id'));
Entry::find($entry->id)->delete();
File::delete(URL::base() . 'public/uploads/' . $entry->filename);
}
当我在 chrome 开发人员工具中查看网络选项卡查看 ajax 请求时,我在此删除方法中发现状态 404,而它在 wamp 本地工作正常。谁能告诉我这里出了什么问题以及这个 404 not found 到底是什么意思?
这里没有找到什么?
【问题讨论】:
-
仔细检查一下:开发工具网络选项卡中的 URL 是否应该是?你确定你的 routes.php 已经在生产服务器上更新了吗?
-
目前它们都已更新和检查。似乎 delete 方法不适用于 ajax 调用,因为 succes 函数甚至从未运行。我已将 ajax 类型更改为 POST 并且至少它会运行,即使它没有发布到我正确的删除控制器方法。
标签: ajax request laravel eloquent laravel-3