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 構文が間違っていて、対応する開始中かっこを持たない追加の終了中かっこをもう 1 つ書いたため、エラーが発生しています。ハッシュには常にキーと値のペアが必要です。ですから、このように書くことができます。

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