Rails - 意外=>,期待keyword_end - Savon

斯图尔特

我正在尝试将下面的数据传递到 Savon 以作为 XML 发送。

传入一项时效果很好。

当我为添加多个项目时添加 each 语句时,会创建以下错误:

syntax error, unexpected =>, expecting keyword_end
  'SalesOrder' => [

有效的代码:

new_or = {

"Order" => {
  "AccountCode" => '#{current_user.accode}',
  "Properties" => {
    "PropertyItem" => [
      {
        "Name" => "Foo",
        "Value" => "Bar",
      },
      {
        "Name" => "Colour",
        "Value" => "Green",
      }
    ]
  }
  "Items" => { 
    'SalesOrder' => {
       'sku' => "SKU-100",
        'Quantity' => 10,
        'Price' => 10.78,
     }
}

} #Close_Order

} #Close new_or

不起作用的代码:

new_or = {

"Order" => {
  "AccountCode" => '#{current_user.accode}',
  "Properties" => {
    "PropertyItem" => [
      {
        "Name" => "Foo",
        "Value" => "Bar",
      },
      {
        "Name" => "Colour",
        "Value" => "Green",
      }
    ]
  }
  "Items" => { 
    @order.items.each do |item|
       'SalesOrder' => [
        {
          'sku' => item.sku,
          'Quantity' => item.qtny,
          'Price' => item.price,
        },
      ],
  end
}

} #Close_Order

} #Close new_or
丹妮·曼尼

我要指出的第一件事是你应该在这种情况下使用map而不是each因为否则它不会返回块的捕获结构,只会返回Item原始记录。

其次,您的语句中有很多语法问题,问题中有一些可能是错别字,因为您说第一部分有效,即使那里也存在一些问题。但是请研究以下我认为是您所追求的结果。

"Items" => @order.items.map { |item|
    {
        'SalesOrder' => {
            'sku' => item.sku,
            'Quantity' => item.qtny,
            'Price' => item.price
        }
    }
}

这将导致以下示例

"Items" => [
    {
        'SalesOrder' => {
            'sku' => 10,
            'Quantity' => 100,
            'Price' => 999
        }
    },
    {
        'SalesOrder' => {
            'sku' => 20,
            'Quantity' => 200,
            'Price' => 1299
        }
    }
]

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

Ruby:意外的“,”,期待keyword_end

来自分类Dev

vagrant意外的keyword_end,期待输入结束

来自分类Dev

Rails的Heroku错误:语法错误,意外的keyword_end,期望输入结束

来自分类Dev

Rails Controller错误:语法错误,意外的keyword_end,预期输入结束

来自分类Dev

“意外的输入结束,需要keyword_end(SyntaxError)” RSpec 3,Rails 4.1.6,Ruby 2.0

来自分类Dev

Rails中的as_json输入意外结束,期望使用keyword_end

来自分类Dev

意外的keyword_end,期望输入结束

来自分类Dev

Rspec意外的keyword_end,期望为'}'

来自分类Dev

SyntaxError意外的keyword_ensure,期望keyword_end

来自分类Dev

Ruby-意外的keyword_when,期望keyword_end

来自分类Dev

SyntaxError意外的keyword_ensure,预期为keyword_end

来自分类Dev

意外的keyword_do_block预期的keyword_end

来自分类Dev

Ruby意外的$ end,期望值为keyword_end

来自分类Dev

意外的keyword_end错误,但语法似乎正常

来自分类Dev

Rails:语法错误,意外的keyword_ensure,期望$ end

来自分类Dev

语法错误,意外的keyword_when,预期的keyword_end(SyntaxError)

来自分类Dev

语法错误,意外的keyword_else,预期的keyword_end

来自分类Dev

语法错误,意外的keyword_do_block,期望keyword_end ...关闭

来自分类Dev

语法错误,意外的keyword_ensure,在我的应用程序中期望keyword_end

来自分类Dev

语法错误“语法错误,意外的输入结束,需要keyword_end(SyntaxError)”

来自分类Dev

Ruby代码具有语法错误,意外的keyword_end,期望输入结束

来自分类Dev

Ruby语法错误-意外的输入结束,需要keyword_end

来自分类Dev

Ruby Beginner-意外的输入结束,期望使用keyword_end

来自分类Dev

语法错误“语法错误,意外的输入结束,需要keyword_end(SyntaxError)”

来自分类Dev

Ruby:“意外的keyword_end” ...但所有开启者和结束者都匹配

来自分类Dev

Ruby语法错误-意外的输入结束,期望使用keyword_end

来自分类Dev

语法错误,意外的输入结束,期望使用keyword_end红宝石

来自分类Dev

语法错误,意外的一元+,期望keyword_end

来自分类Dev

语法错误,意外的tIDENTIFIER,重构IF / ELSE后需要keyword_end

Related 相关文章

  1. 1

    Ruby:意外的“,”,期待keyword_end

  2. 2

    vagrant意外的keyword_end,期待输入结束

  3. 3

    Rails的Heroku错误:语法错误,意外的keyword_end,期望输入结束

  4. 4

    Rails Controller错误:语法错误,意外的keyword_end,预期输入结束

  5. 5

    “意外的输入结束,需要keyword_end(SyntaxError)” RSpec 3,Rails 4.1.6,Ruby 2.0

  6. 6

    Rails中的as_json输入意外结束,期望使用keyword_end

  7. 7

    意外的keyword_end,期望输入结束

  8. 8

    Rspec意外的keyword_end,期望为'}'

  9. 9

    SyntaxError意外的keyword_ensure,期望keyword_end

  10. 10

    Ruby-意外的keyword_when,期望keyword_end

  11. 11

    SyntaxError意外的keyword_ensure,预期为keyword_end

  12. 12

    意外的keyword_do_block预期的keyword_end

  13. 13

    Ruby意外的$ end,期望值为keyword_end

  14. 14

    意外的keyword_end错误,但语法似乎正常

  15. 15

    Rails:语法错误,意外的keyword_ensure,期望$ end

  16. 16

    语法错误,意外的keyword_when,预期的keyword_end(SyntaxError)

  17. 17

    语法错误,意外的keyword_else,预期的keyword_end

  18. 18

    语法错误,意外的keyword_do_block,期望keyword_end ...关闭

  19. 19

    语法错误,意外的keyword_ensure,在我的应用程序中期望keyword_end

  20. 20

    语法错误“语法错误,意外的输入结束,需要keyword_end(SyntaxError)”

  21. 21

    Ruby代码具有语法错误,意外的keyword_end,期望输入结束

  22. 22

    Ruby语法错误-意外的输入结束,需要keyword_end

  23. 23

    Ruby Beginner-意外的输入结束,期望使用keyword_end

  24. 24

    语法错误“语法错误,意外的输入结束,需要keyword_end(SyntaxError)”

  25. 25

    Ruby:“意外的keyword_end” ...但所有开启者和结束者都匹配

  26. 26

    Ruby语法错误-意外的输入结束,期望使用keyword_end

  27. 27

    语法错误,意外的输入结束,期望使用keyword_end红宝石

  28. 28

    语法错误,意外的一元+,期望keyword_end

  29. 29

    语法错误,意外的tIDENTIFIER,重构IF / ELSE后需要keyword_end

热门标签

归档