Witam wszystkich po raz pierwszy na tym forum.
Nie wiem dlaczego, ale nagle zorientowałem się, że posiadam dwie wersje Rails na swoim Ubuntu lucid. Ponieważ zaczynam swoją przygodę z RoR, to właściwie nie wiem czy to jest normalne? Wcześniej na pewno wdrażałem się na ver.3 bo elegancko działało polecenie rails s
Po krótkiej przerwie od RoR polecenie przestało mi działać (a dużo przez ten czas instalowałem i już nie pamiętam co i jak). W końcu udało mi się coś uruchomić przez script/server, czyli mam rails ver.2, co było też widać na localhost:3000
Jednakże, w tym samym czasie, polecenie “gem list --local” twierdzi, że mam wersję rails 3.2.6. No to radośnie użyłem apt-get remove rails aby usunąć “starą wersję rails”
Oczywiście nic teraz mi nie działa. Na przykład polecenie sudo rails new nazwa_aplikacji daje command not found. Ale gem rails 3.2.6 wciąż jest i polecenie rails na zwykłym koncie daje standardowy wpis dotyczący używania polecenia.
A może gem rails to nie to samo co pakiet z apt-get? Czy możecie mi to wyjaśnić i podpowiedzieć co trzeba zrobić abym miał na ubuntu 10.10 działające rails v.3?
Instalowanie rails przez apt-get to nie jest najlepszy pomysł. Railsy to gem, który można zainstalować poleceniem “gem install rails” tak samo jak wszystkie inne gemy, ale gemy są też przypisane do danej wersji rubyego, więc ciężko powiedzieć co u Ciebie się stało (tym bardziej, że nie wiem jak są instalowane rails przez apt-get).
W przypadku instalowania railsów przez “gem install”, mjąc daną wersję rubego bez problemu możesz mieć kilka różnych wersji railsów, które dla danej wersji rubyego zostały zainstalowane,
Moja rada jest taka:
- Zainstaluj rvm ( https://rvm.io// )
- Zainstaluj ruby 1.9.3
- Gdy już będziesz miał odpowiednią wersję rubyego (rvm use 1.9.3) zainstaluj railsy poleceniem gem install rails -v 3.2.6 (o ile railsy już nie będą zainstalowane z rubym - nie pomnę jak to jest tam rozwiązane).
- Ciesz się dobrze postawionym środowiskiem, gdzie nie musisz używać sudo.
Warto tu nadmienić, że skoro railsy są gemem, to jeśli będziesz chciał zmienić wersję na wyższą, wystarczy zmienić wersję w Gemfile w aplikacji. Dla przykładu u mnie polecenie “gem list --local”, daje taki wynik: rails (3.2.6, 3.2.5, 3.2.3, 3.2.2, 3.2.0, 3.1.1, 3.1.0), co nie jest niczym złym - oznacza tylko, że w czasie rozwijania aplikacji railsy były uaktualniane kolejno do takich wersji (a za każdym razem instalowany był nowy kolejny gem).