小编Dud*_*olf的帖子

Rails render_to_string

我在使用rails render_to_string函数时遇到困难。我已经使用--api标志创建了一个应用程序,因此我认为这可能是个问题,因为我已经在“完整”的Rails应用程序中对其进行了测试,并且效果很好。

本质上我在打电话:

body_html = render_to_string(template: 'reservations/print')
Run Code Online (Sandbox Code Playgroud)

我也尝试过

body_html = render_to_string('reservations/print')
body_html = render_to_string(partial: 'reservations/print')
body_html = render_to_string(partial: 'reservations/print.html.erb')
Run Code Online (Sandbox Code Playgroud)

这应该返回该模板的html。文件名是print.html.erb,只有基本数据,即

<p> Hello world. </p>
Run Code Online (Sandbox Code Playgroud)

当我输出body_html时,它为空。

我引用了这个SO问题,在pdf格式中render_to_string的正确方法是什么?并且还将使用Wicked PDF生成pdf文件。

非常感谢

ruby-on-rails render-to-string

3
推荐指数
1
解决办法
5984
查看次数

Rails has_many 和 has_one 带参数

我有如下设置:

用户.rb

class User < ActiveRecord::Base
  ...

  has_many :projects_users
  has_many :projects, through: :projects_users  

  ...

end
Run Code Online (Sandbox Code Playgroud)

项目_用户.rb

class ProjectsUser < ActiveRecord::Base
  belongs_to :project
  belongs_to :user

  has_one :projects_users_role  
end
Run Code Online (Sandbox Code Playgroud)

项目.rb

class Project < ActiveRecord::Base
  has_many :projects_users
  has_many :users, through: :projects_users
end
Run Code Online (Sandbox Code Playgroud)

用户嵌套在我的路由文件中的项目下。

由于某种原因,我似乎找不到为用户访问单个项目的好方法。理想情况下我想创建一个

 has_one :project_user
Run Code Online (Sandbox Code Playgroud)

关联,然后是

has_one :project, through: :project_user 
Run Code Online (Sandbox Code Playgroud)

并以某种方式将项目的 ID 传递给协会(我知道这是不可能的)。任何好的方法的想法。

然后我想调用类似的方法

   @user = User.includes(:project (project_id parameter).find(:id) 
Run Code Online (Sandbox Code Playgroud)

在我的用户控制器中。

非常感谢任何帮助。

谢谢

更新

我本质上在projects_users.rb中为每个项目每个用户附加了一个角色(上面更新并在下面添加)

项目_用户.rb

class ProjectsUser < ActiveRecord::Base
  belongs_to :project
  belongs_to :user

  has_one :projects_users_role  
end
Run Code Online (Sandbox Code Playgroud)

项目_用户_角色.rb

  class ProjectsUsersRole < ActiveRecord::Base
    belongs_to …
Run Code Online (Sandbox Code Playgroud)

ruby-on-rails associations has-many has-one

1
推荐指数
1
解决办法
5489
查看次数

当我只有一组值时,SQL Store varchar或int

我想知道当字段只有一组可能的值时,存储一个值的整数或一串值是否更好(主观我知道).例如

 Person Table
 1.
 Name Age Category
 Joe  25  0
 Jane 28  2
 John 22  1

 2.
 Name Age Category
 Joe  25  Student
 Jane 28  Teacher
 John 22  Staff
Run Code Online (Sandbox Code Playgroud)

哪种方法可取?方法1可能更快更好地进行查询,但是,在显示数据时会有更多的编程成本.

方法2可能更慢,更具表现力并且编程成本更低.

任何建议都会有用.

提前致谢

sql sqldatatypes

1
推荐指数
1
解决办法
77
查看次数