【问题标题】:Adding POST Params to render json methods in Ruby on Rails添加 POST 参数以在 Ruby on Rails 中呈现 json 方法
【发布时间】:2012-04-28 02:00:09
【问题描述】:

我在 user.rb 模型中有一个名为 is_following 的方法,它会检查一个用户是否在关注另一个用户。

用户控制器

  def show
    @user = User.find(params[:id])
       respond_to |format|
          format.json { render json: @user, :methods => [:image_url, :is_following] }
       end

用户模型

  def is_following params
    return "yep" if params[:follower_id] == id
  end

但是,我不知道如何将参数传递给控制器​​中的 :is_following 方法。有人对此有任何运气或解决方案吗?

【问题讨论】:

    标签: ruby-on-rails ruby methods models params


    【解决方案1】:

    这可能不是您正在寻找的答案,但它绝对是一个解决方案。我建议您停止使用 render 来生成 JSON。

    jbuilderrabl 之类的 Gem 让您更轻松,并为您提供更大的灵活性。

    Ruby on Rails 是一个 MVC 框架。您应该将视图生成留在视图层。这样做可以让您免于将来遭受的更多痛苦。

    【讨论】:

    • 哇,那会为我节省大量时间......就像一个月前一样哈。这个应用程序的很多内容已经建立在这种生成 json 响应的方法上,我现在真的不想迁移回来 :(
    • 想想这个。在未来的迁移中,它的维护可以为您节省多少时间?现在,您只能任由 ActiveRecord 如何生成 JSON。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-06-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-05-16
    • 2012-09-29
    • 2012-06-30
    相关资源
    最近更新 更多