首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Ruby on Rails @article.id and@article.category_id不断切换

Ruby on Rails @article.id and@article.category_id不断切换
EN

Stack Overflow用户
提问于 2016-07-26 09:31:08
回答 1查看 72关注 0票数 0

谁能告诉我为什么id和category_id总是在Rails中切换?我快疯了!控制台说它是正确的,但当我得到一个错误时,它显示params改变了它。下面是我的控制器:

代码语言:javascript
复制
class ArticlesController < ApplicationController

def new
    @article = Article.new
    @category = Category.find(params[:category_id])
end

def create
    @article = Article.new(articles_params)
    @category = Category.find(params[:category_id])
    # binding.pry
    @article.category_id = @category.id
    binding.pry
    if @article.save
        redirect_to category_path(@category)
    else
        render :new
    end
end

def edit
    @category = Category.find(params[:category_id])
    @article = Article.find(params[:id])
end

def update
    @article = Article.find(params[:id])
    @category = Category.find(params[:category_id])

    if @article.update(articles_params)
        redirect_to category_path(@category)
    else
        render :edit
    end
end

def destroy
    # binding.pry
    @article = Article.find(params[:id])
    @article.destroy

    redirect_to category_path(@category)
end

private

def articles_params
  params.require(:article).permit(:title, :body)
end
end

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-07-26 09:51:55

一切看起来都很好。

下面是截图中的请求参数:

代码语言:javascript
复制
{
  "id" : 1,
  "category_id" : 2
}

您要在您的文章控制器的上下文中查找id 11引用id为1的文章。同时,您正在寻找id为2 (category_id 2)的Category。

代码语言:javascript
复制
Category.find(params[:category_id])

错误是说它找不到id为2的Category对象。

这2个来自您的请求。如果有什么地方出了问题,那就是在你的请求创建中。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/38579785

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档