在 Rails 生成器模板中查找列/属性的类型?

Posted

技术标签:

【中文标题】在 Rails 生成器模板中查找列/属性的类型?【英文标题】:Finding type of column/attribute in Rails generator template? 【发布时间】:2018-11-26 03:51:56 【问题描述】:

有没有办法从生成器模板(例如视图或_form)中找出列/属性的类型(数据库或Ruby)?我可以从attribute.field_type 获得一些信息,但这似乎是 Rails 认为它​​应该使用哪种 html 输入,所以它是间接的。字符串和引用(外键)都产生 text_field,boolean 产生 check_box 等。

如果有办法做到这一点,我真的很想看看文档在哪里,因为我没有找到它。 Rails Guide section 没有提供太多信息,据我所知,Thor 文档没有我想要的;我正在专门寻找关于可以对正在生成的类及其属性调用哪些方法的信息(包括它们的作用,而不仅仅是一个列表)。

【问题讨论】:

【参考方案1】:

根据下面提到的行:

我正在专门寻找有关可以对正在生成的类及其属性调用哪些方法的信息。

有一个名为“方法”的函数可以调用类以及类的实例,它会给出该特定类(或实例)上可用方法的列表。

假设有一个名为 User 的类,那么可以使用下面提到的命令找到该特定类的所有方法:

User.methods

希望对你有帮助!!

【讨论】:

谢谢,但我真的希望在这里找到实际的文档。不仅是功能列表,而且还描​​述了它们的功能。我会相应地更新问题。【参考方案2】:

如果您正在寻找具体的详细文档(不仅仅是 rails 指南): http://api.rubyonrails.org/

您几乎可以深入了解所有内容。例如,您可以进入 ActiveRecord:AttributeMethods 并在那里四处寻找。我不确定您在寻找什么,但我相信您会在附近找到它。

【讨论】:

以上是关于在 Rails 生成器模板中查找列/属性的类型?的主要内容,如果未能解决你的问题,请参考以下文章

Rails 3-修复涉及模板和 JS 生成器的主宰

mock.js的运用

如何更改 Rails 脚手架中的默认模型模板?

更改列的 Rails 迁移

wpf 通过为DataGrid所绑定的数据源类型的属性设置Attribute改变DataGrid自动生成列的顺序

Rails has_many :通过连接模型中的额外属性查找