通过一段时间的使用,逐步掌握了Yard中的一些技巧。在我初期寻找Yard教程的时候,发现Yard的文档较少,尤其是中文教程,所以把这段时间自己摸索或求教到的一些知识点分享出来:
1.概述
Yard是根据ror项目中的注释代码,自动生成项目文档的插件,以html页面的形式呈现,可以快速搜索自己想要的内容;
2.安装
直接往gemfile里加就行了,这个就不多少了;
3.启动服务
项目根目录下,直接运行 yard server -r
默认就会在localhost的8808端口启动服务,打开浏览器输入localhost:8808即可访问;
-r的作用等于开发模式,修改的内容立即刷新页面就会生效,正式环境直接yard server即可;
4.细节
1.在模型或控制器class作用域之前写的内容,会被识别为这个文件的概述内容;
2.在文字后使用[]来创建超链接,作用域到前后的空格为止,例如:
这个是一个 招标公告[/docs/Bid/Info] 的模型
此时,‘招标公告’四个字就会变成超链接,点击后,会链接到model里的bid/info.rb文件;
/docs 代表根目录,后续的路径,可以写首字母大写的命名空间或是驼峰格式的模型名称,都是可以识别的;
3.处理可以链接到模型或控制器,还可以链接并定位到指定的action,例如:
我们可以参考 搜索[/docs/Bid/InfosController#search-instance_method] 这个动作的代码
此时,搜索会变成一个超链接,并且直接链接到app/controllers/bid目录下的infos_controller.rb中的search方法;
4.可以使用@see关键字,引导用户在看一个action时,可以参考另一个相关的action,例如:
#创建一个分期之后,自动初始化一些相关配置
#@see Report::Config.initialize_config
#@see Report::Result.initialize_result
#@see Check::Config.initialize_check_config
def initialize_config_and_result
xxxxxx
end
此时,文档界面就会提示 also see xxxx方法,并且有链接;
模型名称后加 . 为类方法, 加 # 为实例方法;
5.可以使用@return关键字,来制定某个方法返回数据的类型,例如:
#@return string
def get_province_name
self.province.try :name
end
5.疑惑
用下来还是有一些疑惑