gpt4 book ai didi

ruby - 为什么我得到 '` parse' : (): mapping values are not allowed in this context' in YAML file in Ruby

转载 作者:数据小太阳 更新时间:2023-10-29 07:44:01 24 4
gpt4 key购买 nike

尝试在 Ruby 中打开我的 Yaml 文件时出现上述错误。我已经检查了这个验证器中的 YAML,它已经通过了 http://yamllint.com/ .我不确定我的 YAML 有什么问题会阻止它打开。有任何想法吗?这是 YAML 文件。我正在尝试使用 yml = YAML::load(File.open('servers.yml'))

打开文件
---
servers:
- ps-overture-d01
location: ps-overture-d01
tomcat_location: /home/tomcat/tomcat/webapps/report/
user: tomcat
menus:
- Accounts Receivable
reports:
- Accounts Receivable Aging Report
name: AccountsReceivableAgingReport
location: /public/Common/Reports/Accounts_Receivable_Reports
- Inventory
reports:
- Inventory Master List Report
name: InventoryMasterListReport
location: /public/Common/Reports/Inventory_Reports
- Inventory Totals Report
name: InventoryTotalsReport
location: /public/Common/Reports/Inventory_Reports
- Dealer Purchasing Report
name: DealerPurchasingReport
location: /public/Common/Reports/Inventory_Reports
- DOA Report
name: DOAReport
location: /public/Common/Reports/Inventory_Reports
- Stock Transfers Report
name: StockTransfersReport
location: /public/Common/Reports/Inventory_Reports
- Removed Inventory Report
name: RemovedInventoryReport
location: /public/Common/Reports/Inventory_Reports
- Inventory Order Sheet Report
name: InventoryOrderSheetReport
location: /public/Common/Reports/Inventory_Reports
- Inventory Totals GMROI Report
name: InventoryTotalsGMROIReport
location: /public/Common/Reports/Inventory_Reports
- Master Inventory GMROI Report
name: MasterInventoryGMROIReport
location: /public/Common/Reports/Inventory_Reports
- Dead Stock Report
name: DeadInventoryReport
location: /public/Common/Reports/Inventory_Reports
- Dead Stock Report Details
name: DeadInventoryReportDetails
location: /public/Common/Reports/Inventory_Reports
- Negative Quantity Report
name: NegativeInventoryQTYReport
location: /public/Common/Reports/Inventory_Reports

最佳答案

您的问题在于没有冒号的行:

  - ps-overture-d01
location: ps-overture-d01

什么 http://yamllint.com/所做的是将它们连接到下一行:

? "ps-overture-d01 location"
: ps-overture-d01

Ruby 的 YAML 库不这样做,而是抛出一个错误。我不确定您是否打算将有问题的行连接起来,因此您需要了解如何正确调整 YAML 以提供合理的结构,也许将 id: 添加到这些行中的每一行?

  - id: ps-overture-d01
location: ps-overture-d01

这是您的示例,其中包含我建议的更改:

---
servers:
- id: ps-overture-d01
location: ps-overture-d01
tomcat_location: /home/tomcat/tomcat/webapps/report/
user: tomcat
menus:
- id: Accounts Receivable
reports:
- id: Accounts Receivable Aging Report
name: AccountsReceivableAgingReport
location: /public/Common/Reports/Accounts_Receivable_Reports
- id: Inventory
reports:
- id: Inventory Master List Report
name: InventoryMasterListReport
location: /public/Common/Reports/Inventory_Reports
- id: Inventory Totals Report
name: InventoryTotalsReport
location: /public/Common/Reports/Inventory_Reports
- id: Dealer Purchasing Report
name: DealerPurchasingReport
location: /public/Common/Reports/Inventory_Reports
- id: DOA Report
name: DOAReport
location: /public/Common/Reports/Inventory_Reports
- id: Stock Transfers Report
name: StockTransfersReport
location: /public/Common/Reports/Inventory_Reports
- id: Removed Inventory Report
name: RemovedInventoryReport
location: /public/Common/Reports/Inventory_Reports
- id: Inventory Order Sheet Report
name: InventoryOrderSheetReport
location: /public/Common/Reports/Inventory_Reports
- id: Inventory Totals GMROI Report
name: InventoryTotalsGMROIReport
location: /public/Common/Reports/Inventory_Reports
- id: Master Inventory GMROI Report
name: MasterInventoryGMROIReport
location: /public/Common/Reports/Inventory_Reports
- id: Dead Stock Report
name: DeadInventoryReport
location: /public/Common/Reports/Inventory_Reports
- id: Dead Stock Report Details
name: DeadInventoryReportDetails
location: /public/Common/Reports/Inventory_Reports
- id: Negative Quantity Report
name: NegativeInventoryQTYReport
location: /public/Common/Reports/Inventory_Reports

关于ruby - 为什么我得到 '` parse' : (<unknown>): mapping values are not allowed in this context' in YAML file in Ruby,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24782042/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com