Rails 请问 Rails 文档中有动态生成的方法吗?

jiffies · 2012年05月10日 · 最后由 jiffies 回复于 2012年05月12日 · 3021 次阅读

比如我想查 new_user_path 这种函数的文档,在哪能查到?

LZ 是想问这个 bundle exec rake routes ?

#2 楼 @HungYuHei 不是我就是想知道很多动态方法在 rails 文档中怎么查http://api.rubyonrails.org/

@jiffies 如果方法根据用户的输入是动态生成的,那你直接在 api doc 里找是找不到的

楼主问得这个问题,我也一直想知道, 比如 Customer.find_by_name 我很想知道 find_by_name 这个函数的参数是什么,返回值是什么?

我觉得这个地方,是 rails 的硬伤

刚才用 pry 试了一下,用 show-method Customer.find_by_name 也看不到

#4 楼 @willmouse 那也应该有参数,返回值的说明吧,不然怎么知道怎么调用呢

我的问题 官方文档 有解释 http://guides.rubyonrails.org/active_record_querying.html#dynamic-finders 但是总觉的不爽

既然是动态生成的方法 每个项目生成的都不一样 api doc 是没法随你动态生成, 至于 find_by 这种, 你可以在 api doc 里面查 find_by 你会发现一些相关的方法

fInd_by 也就一条规则,by 什么,什么就是参数,后面有 and 的就再多那些 and 的 (用文字我也没法描述清楚)。反正,这个功能也就那么回事,没什么复杂的。

系统学习吧,rails 中充满了 DSL,就像一个新的语言,基础概念还是要学的,没有别的捷径。 另外还有一个建议:如果你有一定 web 开发经验并且思路和 rails 不同,那么基于 rack、sinatra 之类做一个你自己的 web 框架也是不错的选择

#8 楼 @jiffies Rails api doc 都是由注释生成的,由于动态生成的方法一般是用 method_missing 或者 define_method 在调用时生成的,所以没有地方为它们单独写注释。

这些 doc 里是没有的,但是很多资料都会特别的提出这些动态方法,告诉你如何使用。

如果你真的还是想看具体是传什么参数,可以看 Rails 源代码,这些东西也只有源码里有了,不过不是很推荐新手去看 Rails 源代码,原因大家都懂。

需要 登录 后方可回复, 如果你还没有账号请点击这里 注册