【问题标题】:Accessing Nanoc variables from Rakefile从 Rakefile 访问 Nanoc 变量
【发布时间】:2016-11-21 00:37:23
【问题描述】:

我想知道如何从 Rakefile 访问 Nanoc 的变量(例如 @items@config 等)。

我有一个名为 nanoc.yaml 的文件,其中包含如下数据:

products:
  ce:
    name: 'Community Edition'
  ee:
    name: 'Enterprise Edition'

我希望能够在 Rakefile 中访问它,因此我有一个“单一事实来源”,可以从 Nanoc 站点以及拉取一些文档的 Rakefile 中访问。例如,在 Nanoc 站点中,您可以使用 @config[:products] 访问这些内容,但不能在 Rakefile 中访问。

我需要在 Rakefile 中 include 来自 Nanoc 的东西吗?

【问题讨论】:

    标签: ruby rake nanoc


    【解决方案1】:

    注意:此答案涉及私有 API!

    您可以使用SiteLoader 创建站点:

    site = Nanoc::Int::SiteLoader.new.new_from_cwd
    

    网站有一个配置:

    site.config[:products][:ce][:name]
    # => Community Edition
    

    同样,这是私有 API 的一部分(至少目前是这样),因此上面的代码可能会在未来的版本中中断。

    【讨论】:

    • 谢谢 :) 为了避免使用私有 API,我可能会采用的另一个答案是使用 YAML 解析器来获取配置信息。
    猜你喜欢
    • 2015-10-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-02-16
    • 2023-04-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多