2015-05-08 10 views
7

Jestem kompletnie nowy w Ruby on Rails, z wielką trudnością zainstalowałem oprogramowanie na moim komputerze z Windows 8. Teraz właśnie podążam za this guide, aby utworzyć przykładowy przykład Hello World.ExecJS :: ProgramError w Welcome # index TypeError: Obiekt nie obsługuje tej właściwości lub metody

Kiedy próbuję wykonać kroki podane w sekcji 4.3 Ustawianie aplikacji Strona główna, zacząłem napotykać problem.

Oto co zrobiłem:

1) Otwórz plik config/routes.rb w edytorze.

2) zakomentowane linii root 'welcome#index'

3) ponownego uruchomienia serwera.

Teraz, kiedy dostęp do adresu URL jako localhost:3000 potem zaczęła się poniżej błędu w mojej przeglądarce:

ExecJS::ProgramError in Welcome#index 

Showing E:/Rails/blog/app/views/layouts/application.html.erb where line #6 raised: 

TypeError: Object doesn't support this property or method 
    (in C:/RailsInstaller/Ruby2.0.0/lib/ruby/gems/2.0.0/gems/turbolinks-2.5.3/lib/assets/javascripts/turbolinks.js.coffee) 

Extracted source (around line #6): 
<head> 
<title>Blog</title> 
<%= stylesheet_link_tag 'application', media: 'all', 'data-turbolinks-track' => true %> 
<%= javascript_include_tag 'application', 'data-turbolinks-track' => true %> 
<%= csrf_meta_tags %> 
</head> 
<body> 

Rails.root: E:/Rails/blog 

Czy możesz mi powiedzieć, dlaczego ja dostaję ten problem?

Czy rozwija się również aplikacje używające Ruby On Rails? ponieważ minęły 2 dni, odkąd próbuję, ale do tej pory miałem do czynienia z wieloma problemami, zanim zobaczyłem przykład z Hello World. Pracowałem nad frameworkami opartymi na Javie, ale nigdy nie miałem problemów z instalacją lub tworzeniem podstawowych aplikacji.

Odpowiedz

17

W swoich /app/views/layouts/application.html.erb wierszach 5 i 6, zmień domyślną aplikację pierwszego parametru.

+1

Świetnie, zadziałało. Ale straciłem całkowitą nadzieję na Ruby on Rails, naprawdę źle, sam oficjalny dokument nie mówi, jak poprawnie zainstalować lub utworzyć aplikacje. – user3181365

+1

@Gaurav Gupta Czy możesz wyjaśnić, na czym polega problem i dlaczego trzeba zmienić parametr skryptu? –

+0

Zwolniono - nie wyjaśniłem, dlaczego rozwiązanie zadziałało, co oznaczało, że musiałem się dowiedzieć, dlaczego to nie zadziałało. (Różne tagi tworzenia linków wydają się dynamicznie tworzyć łącza do konkretnych plików domyślnie utworzonych domyślnie w zasobach/folderach, więc prawdopodobnie istniała wersja, w której domyślna strona indeksu próbowała uzyskać dostęp do pliku application.css (na przykład), podczas gdy default.css był wstępnie zainstalowany plik.) – linkhyrule5

0

Chociaż powyższe rozwiązanie działa (z Gaurav Gupta), tym lepiej jeden byłoby obniżyć wersję 'coffee-script-source' do v1.8.0 ponieważ problem jest z wersją 1.9.0 i Over:

Dodaj w bloga/GemFile v1.8.0 coffeescript-source (v1.9.0 nie działa w systemie Windows)

#For Windows it works with CofferScript v1.8 
gem 'coffee-script-source', '1.8.0' 

Następnie zatrzymać serwer (jeśli został uruchomiony) i zrobić:

bundle update coffee-script-source 

Teraz powinno działać poprawnie.

Wymiana "application" przez "default" w blog \ app \ views \ układy \ application.html.erb linia 5 i 6 będą zapobiegać, aby załadować dodatkowe pliki (w wyniku CSS i JavaScript nie plików używanych na stronie).

Powiązane problemy