Zaczynam przygodę z Ruby on Rais. Zainstalowałam je, załączyłam mySQL, jednak w wygenerowanych folderach nie ma folderu script/generate. Czytałam, że w Ruby3 nie ma tego folderu. Zainstalowałam bundlera, ale wywala mi brak json-a ( make sure that 'gem install json -v ‘1.8.6’), instaluję json-a - i w efekcie wywala mi: , you don’t have write permission for the /var/lib/gems/2.3.0 directory ". Jak zainstalować raisy aby było wszystko w nich? Googlałam te polecenia, robiłam sudo update i inne rzeczy i dalej jest to samo. Nie mam już sił. Jaki robię podstawowy błąd?
Po co Ci folder script/generate? Pierwsze słyszę o nim
Jak system operacyjny używasz?
Podstawowy błąd to enigmatyczny post Oczekując pomocy i pisząc zapytanie podaj jak najwięcej szczegółów, np. zgodnie z tym blogiem (tutaj link) powinnam mieć taki i taki folder a nie mam, pracuję na Linuksie, ruby mam zainstalowanego przez rbenv, bundle install daje taki a taki wynik. Próbowałam tego, tego i tego. Dostałam takie i takie wyniki. Wtedy będzie Ci łatwiej pomóc.
Czekam na więcej info. Wtedy pomożemy
Z tego co google podpowiada to script/generate
jest w Ruby on Rails 2, teraz mamy już Ruby on Rails 5. podejrzewam, że autorka może korzystać z jakieś starej polskiej książki dla Ruby on Rails.
Przepraszam za mało mówiący post. Przerabiam książkę ,Programowanie w Ruby od podstaw" z 2010 roku. Idąc krokami w dziale każą utworzyć katalogi przez ,rails nazwa_aplikacji" --> już w tym momencie widzę, że wg książki powinno się tam znajdować więcej folderów niż mi się utworzyło ( mam config, db…itd), brakuje np. folderu script). Czytałam, że w Rails3 nie ma. Okej jadę dalej. Tworzę połączenie z bazą danych mySQL. Następnie pojawia się scaffolding do wygenerowania wstępnej wersji kodu. Każą wpisać w terminal "ruby script/generate scaffold nazwa_tabeli. I w tym momencie wyskakuje mi ,No such file or directory --script/generate (LoadError).
Taka rada, odpuść sobie stare książki, to naprawdę nie jest dobry pomysł.
O ile w takich językach jak C czy C++ podstawy się nie zmieniają, więc można używać starej symfoni to w takich railsach już dość sporo z wersji na wersję.
Jeśli “umiesz w angielski” to polecam zrobić kilka interaktywnych kursów w internecie (np. codecademy), a potem cały Odin Project. Jeśli porzadnie się przyłożysz to spokojnie możesz iść z taką wiedzą na Juniora. Jeśli wciąż nie będziesz się czuła pewnie to: Tutorial od Hartla
Nawet jeśli się na to nie zdecydujesz, to daruj sobie tą książkę.
OKej, odpuszczam, ale czy nie jest to aktualnie wykonalne? Te zadanie z książki? Jaka byłaby inna droga aby uzyskać to czego chcą, skoro nie ma tego script? Dziękuje za kursy. Zabieram się za nie
zakładając, że masz aktualną wersję rails (5.xx) rails generate … powinno zadziałać
Jeśli chcesz spawdzić jak to działa - proponuję http://guides.rubyonrails.org/getting_started.html
Różnice są takie, że ciągle będą problemy. Inne metody w routes.rb, inne w kontrolerach, inne bibilioteki do testów, inne gemy, inne polecenia w konsoli. Uczenie się z materiałów o Rails 3 i niżej to marnowanie czasu.
Oj, ale w takim C++ standardy też się bardzo zmieniają. C++11 naprawdę bardzo zmieniło ten język, a C++17 też trochę rzeczy wprowadza. Nie piszę że nie da się w C++ dzisiaj pisać używając tylko tego co oferuje C++03 i wcześniejsze… ale to nie ogólnie nie jest dobra droga.
Wracając do Rubiego, skoro nawet w C++ standardy się powoli zmieniają, to co dopiero w tak dynamicznym ekosystemie jak Railsy Dlatego w pełni się zgadzam z przedmówcami, daj sobie spokój ze starą książką i sięgnij po aktualne materiały.
Dobrze, dziękuję
Chcę ćwiczyć, w pracy na Mac wszystko mi działa, a na Virtual Box w domu nie potrafię stworzyć środowiska, aby po prostu działało. Ktoś pomoże?
w pliku Gemfile
sprawdź czy masz gema therubyracer
. Zapewne jego brak powoduje problem. Ten projekt co utworzyłaś na jakiej jest wersji railsów ?
Wersja ‘4.2.6’
Działa! Dziękuję!
Co robi ten gem??? Co on powoduje? Skąd taki laik jak ja ma wiedzieć, że go brakuje?
No właśnie ja też nie wiedziałem. Ja rozwiązywałem to zawsze tak, że instalowałem nodejs w systemie.