首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Prawn仅为当前用户生成记录

Prawn仅为当前用户生成记录
EN

Stack Overflow用户
提问于 2019-05-03 00:26:37
回答 2查看 59关注 0票数 0

Ive最近实现了Prawn PDF gem

我有PDF报告工作,但当我添加的代码,只显示当前用户的记录。(参见下面的代码)

代码语言:javascript
复制
  def initialize(requests)
    super()
    @requests = Request.where(completed_at: [false, nil]).where(house: current_user.houses).order("created_at DESC")
    request_title
    request_id
  end

我得到了下面的错误:未定义的局部变量或方法`current_user‘prawn。

当代码在下面时,它可以工作,但这不会过滤到当前用户的记录。

代码语言:javascript
复制
class RequestPdf < Prawn::Document
  def initialize(requests)
    super()
    @requests = Request.where(completed_at: [false, nil]).order("created_at DESC")
    request_title
    request_id
  end

我也尝试在requests_controller中实现这一点,但它不会改变PDF的输出。

感谢您的支持

EN

回答 2

Stack Overflow用户

发布于 2019-05-03 00:44:31

我会使用登录助手..。您可能需要将它们直接包含到该Prawn子类中。

user_signed_in?

这些帮助器实际上是为你的控制器设计的。他们在模型里玩得不好。您可能需要将current_user从控制器传递到您的类/模型代码。

票数 1
EN

Stack Overflow用户

发布于 2019-05-03 00:57:28

我会将current_user值发送给initialize方法。

无论您在哪里调用它,可能看起来像这样,将它更改为也传递当前用户值。

代码语言:javascript
复制
something = RequestPdf.new(requests, current_user)

然后更改初始值设定项

代码语言:javascript
复制
  def initialize(requests, current_user)
    super()
    @user = current_user
    @requests = Request.where(completed_at: [false, nil]).order("created_at DESC")
    request_title
    request_id
  end
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/55956639

复制
相关文章

相似问题

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