我在 rails mvc 上使用 ruby,我正在尝试使用 ajax 调用将一些数据发送回服务器端。我对如何在 mvc 中发出和处理 ajax 请求感到困惑。
---------------- 在我的 javascript 文件中--------
$.ajax({
type: 'POST',
url: 'http://localhost:3000/locations',
data: { lat: position.coords.latitude, lng: position.coords.longitude },
contentType: 'application/json',
dataType: 'json'
});
我正在使用 respond_to 块在我的控制器中捕获此请求:
---------------- 在我的家庭控制器中 ------------------
respond_to do |format|
format.js {
render 'users/locations'
}
format.html {}
end
---------------- route.rb ------------------------------------
post 'users/locations'
get 'users/locations'
match "/locations", to: "users#locations"
我试图以这种方式提取数据:
---------------- 在我的位置操作-----------------
dasdasdd // used as a breakpoint to test whether this part was executed. it wasn't.
current_user.update_attribute :Latitude, params[:lat]
current_user.update_attribute :Longitude, params[:lng]
使用调试 Firefox 控制台,我看到内部服务器错误 500。这可能解释了为什么从未执行位置操作。但是为什么会出现错误 500?任何人都可以对我可能错的地方有所了解吗?