Solucionado (ver solução)
Solucionado
(ver solução)
10
respostas

Dúvida em Rotas e Controller - O objeto não dá suporte para a propriedade ou método

Olá, ao abrir meu servidor e tentar acessar http://localhost:3000/produtos eu recebo o seguinte erro:

Showing C:/Sites/lojadecamisetas/app/views/layouts/application.html.erb where line #6 raised:

TypeError: O objeto não dá suporte para a propriedade ou método (in C:/Sites/lojadecamisetas/vendor/cache/ruby/2.1.0/gems/turbolinks-2.5.3/lib/assets/javascripts/turbolinks.js.coffee)

<%= stylesheet_link_tag 'application', media: 'all', 'data-turbolinks-track' => true %> <%= javascript_include_tag 'application', 'data-turbolinks-track' => true %> <%= csrf_meta_tags %>

Imagino que o problema seja com falta/necessidade de algumas Gems, mas quando tentei installar algumas gems pra teste, como a turbolinks e cofee-rails eu recebo outro erro, de falha em certificado:

ERROR: Could not find a valid gem 'coffee-rails' (>= 0), here is why: Unable to download data from https://rubygems.org/ - SSL_connect returned=1 errno=0 state=SSLv3 read server certificate B: certificate verify failed (https://api.rubygems.org/latest_specs.4.8.gz)

Estou o dia todo nesse erro e não consegui resolver isso com auxilio do Google, alguém pode me ajudar?

Agradecido.

10 respostas

Augusto, usando o bundle install, a mensagem é a mesma? Se der, cola seu Gemfile pra podermos analisar.

Abraço!

Oi, João, consegui usar o Bundle intall sem problemas antes, apesar do errinho de "DL is deprecated, please use Fiddle" que ignorei.

Aqui está minha Gemfile:

source 'http://rubygems.org'


# Bundle edge Rails instead: gem 'rails', github: 'rails/rails'
gem 'rails', '4.1.8'
# Use sqlite3 as the database for Active Record
gem 'sqlite3'
# Use jquery as the JavaScript library
gem 'jquery-rails'
# Turbolinks makes following links in your web application faster. Read more: https://github.com/rails/turbolinks
gem 'turbolinks'
gem 'tzinfo-data'
gem 'coffee-rails'

Como eu vi o nome coffee no meio do erro eu adicionei a coffee-rails na file apesar de não estar na Gemfile no video da aula, mas com ou sem não mudou nada. Vlw.

Ninguém sabe resolver esse problema?

Augusto,

Você usa Windows? Geralmente esse é um problema de certificado, dá uma olhada neste link e vê se resolve seu problema.

https://gist.github.com/luislavena/f064211759ee0f806c88

Abraço!

Joviane, eu dei uma olhada nesse tópico dias atrás mas eu não entendi muito bem as instruções, Lembro que não entendi principalmente a parte: C:>gem which rubygems C:/Ruby21/lib/ruby/2.1.0/rubygems.rb Mas faz uns dias já e eu provavelmente precisarei tentar de novo. Poderia me explicar como realizar esse passo-a-passo?

solução!

Augusto,

O comando C:>gem which rubygems é só para imprimir no prompt de comando o caminho para o diretório do rubygems.

Este diretório é o que você tem que usar no próximo comando de acordo com a sua versão do ruby.

Por exemplo, se for impresso:

C:/Ruby21/lib/ruby/2.1.0/rubygems.rb

Você precisa executar o comando start passando o mesmo diretório só que com a barra invertida e sem o .rb no final:

C:\>start C:\Ruby21\lib\ruby\2.1.0\rubygems

Depois é só fazer o passo final que é copiar o certificado (arquivo com a extensão .pem que foi obtido nos passos anteriores) para a pasta ssl_certs.

Abraço!

Sinceramente, tentei de novo do 0 aqui e só acho novos erros e não entendo nada desse passo a passo do link, mas obrigado, vou fechar o tópico. Desisto de RoR.

Acho que estou chegando muito tarde mas... a solução se fizer um minimo de pesquisa no google é instalar node.js ... Amigo, infelizmente a persistência é a melhor qualidade de um programador, não jogar a toalha nunca e buscar alternativas. Bons scripts!

Para quem estiver com o mesmo problema, segue um link com várias possibilidades de como resolver.

https://stackoverflow.com/questions/28421547/rails-execjsprogramerror-in-pageshome

De qualquer forma, para mim resolveu apenas retirando "//" do "//= require turbolinks". Utilizo Windows 10. Pesquisei das consequências futuras de retirar o "//" mas não encontrei nada a respeito.

Fica dessa forma:

app\assets\javascripts\application.js

//= require rails-ujs
  = require turbolinks
//= require_tree .

Abs

EDIT:

A solução acima não seria a mais viável. Para resolver seguir os passos abaixo:

Problema Rails no windows

“TypeError: O objeto não dá suporte para a propriedade ou método”

Solução Adicionar no arquivo Gemfile

gem ‘coffee-script-source’, ‘1.8.0’

Rodar

bundle update coffee-script-source

Kadu Simões você é demais!! Me salvou!!

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software