Синтаксическая ошибка, неожиданный 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