我正在尝试 curl POST 我的 Rails 应用程序以创建一个新的 Entry 对象。问题是我的 entries_controller 创建操作如下所示:
def create
@user = current_user
@entry = @user.entries.build(params[:entry])
respond_to do |format|
if @entry.save
format.html { redirect_to landing_page_url, notice: 'Entry was successfully created.' }
format.json { render json: @entry, status: :created, location: @entry }
else
format.html { render action: "new" }
format.json { render json: @entry.errors, status: :unprocessable_entity }
end
end
end
调用 @user.entries.build 只会返回一个异常,因为 current_user 不存在。问题是当我使用浏览器创建条目时(当我登录并创建 current_user 变量时),创建操作效果很好,但我不知道是否可以在不更改控制器逻辑的情况下卷曲 POST 并创建一个条目。如果不可能,有人可以帮助找到正确的方向来构建控制器逻辑(与 curl POST 兼容)吗?
如果这是一个愚蠢的问题,我很抱歉,我对这一切都很陌生。
PS:我正在使用 Rails 3.2.3,如果有帮助的话。