0

我在这一行有一个语法错误:

credit_card = {
  :user => :credit_card_number,
  "credit_card_date(2i)",
  "credit_card_date(1i)",
  :credit_card_name,
  :credit_card_surname,
  :credit_card_ccv
}}

使用 1.8.7-p370 我收到此错误:

语法错误意外','

尽管如此,我的应用程序可以正常工作,但我无法修复此错误。我错过了什么?我该如何解决这个错误?

4

3 回答 3

3

您尝试制作的哈希格式非常糟糕,您要么缺少键,要么您想要的结构(嵌套?)以某种方式混淆了。

你能说明你想要什么最终结果吗?

如果它只是一个平面哈希,它需要更像这样:

credit_card = {   
  :user => :credit_card_number,
  :missing_hash_key => "credit_card_date(2i)",
  :missing_hash_key_2 => "credit_card_date(1i)",
  :missing_hash_key_3 => :credit_card_name,
  :missing_hash_key_4 => :credit_card_surname,
  :missing_hash_key_5 => :credit_card_ccv } # you also had an extra end bracket here '}'
于 2012-10-21T13:59:45.667 回答
3

你应该这样做:

credit_card = {:user => {:credit_card=>'Your credit card info'}}
于 2012-10-21T13:04:30.433 回答
1

你得到的错误是因为你的 Hash 语法是错误的,你又写了一个额外的结束花括号,它没有对应的左花括号。哈希总是应该有键值对。所以你可以这样写。

user = {:credit_card => { :credit_card_number => "some_numb", 
        :credit_card_date_2i => "some_string"}, ...}
于 2012-10-21T13:55:01.643 回答