Синтаксическая ошибка, неожиданный tLABEL, ожидание ')' (SyntaxError)

Среда

  • Рубин [1.9.3p547]
  • Рельсы [3.2.22.5]
  • sendgrid-ruby [4.0.8]

Я использовал sendgrid-ruby gem в своем приложении всякий раз, когда я запускаю rails server, он выдает ошибку ниже, которая исходит из gems / sendgrid-ruby-4.0.8 / lib / sendgrid / client.rb: 17

/.rvm/gems/ruby-1.9.3-p547@demo/gems/sendgrid-ruby-4.0.8/lib/sendgrid-ruby.rb:1:in `require_relative ': /.rvm/gems/ruby-1.9.3-p547 @ demo / gems / sendgrid-ruby-4.0.8 / lib / sendgrid / client.rb: 17: синтаксическая ошибка, неожиданный tLABEL, ожидание ')' (SyntaxError) def initialize(api_key: nil, host: nil), request_head... ^ /.rvm/gems/ruby-1.9.3-p547@demo/gems/sendgrid-ruby-4.0.8/lib/sendgrid/client.rb:17: Невозможно назначить nil ... def initialize(api_key: nil, host: nil, request_headers: ... ... ^ /.rvm/gems/ruby-1.9.3-p547@demo/gems/sendgrid-ruby-4.0.8/lib/sendgrid/client.rb:17: Невозможно назначить nil ...ialize(api_key: nil, host: nil, request_headers: nil, versio... ... ^ /.rvm/gems/ruby-1.9.3-p547@demo/gems/sendgrid-ruby-4.0.8/lib/sendgrid/client.rb:17: Невозможно назначить nil ...ost: nil, request_headers: nil, версия: nil)

Я проверил тот же файл и ту же строку gem sengrid-ruby. это ниже линии

def initialize(api_key: nil, host: nil, request_headers: nil, version: nil)

если я заменю это ниже, это не даст мне.

def initialize(api_key, host, request_headers, version)

это синтаксическая ошибка рельсов или ruby-связанной версии? Есть много других ошибок, которые содержат тот же синтаксис в других драгоценных камнях. Что мне делать с синтаксическими ошибками такого типа?

1 ответ

Решение

Для использования ключевых слов требуется Ruby версии 2.0.0 или выше. https://thoughtbot.com/blog/ruby-2-keyword-arguments

Другие вопросы по тегам