Witam
Przy próbie wygenerowania “scaffold” w netbeans 6.0 dla tabeli “names” pojawia mi się następujący komunikat:
Couldn’t find ‘name’ generator
co jest nie tak?
Witam
Przy próbie wygenerowania “scaffold” w netbeans 6.0 dla tabeli “names” pojawia mi się następujący komunikat:
Couldn’t find ‘name’ generator
co jest nie tak?
no skladnia
./script/generate scaffold name pole:string poleb:text
i tak dalej
czyli generator, nazwa jego, nazwa mvc, pole i ich typy
OK dzięki
Ale jak to wygląda w netBeans, bo kiedy daje Generate->scaffold to pojawiają się 3 pola:
Model name
Controller name
Actions
i mając w tabeli “names” kolumny: imie, nazwisko to jak to powinno wyglądać?
co w z tym netbeans, chcesz sie nauczyc rails to zarzuc linuxa, konsole i zrob to porzadnie.
Model name - name
Controller name - name
Actions - zgaduje, bo nie mam pojecia (imie:string nazwisko:string)
rozumiem IDE do Javy, ale rails?
Próbowałem tak zrobić ale ten sam komunikat.
tak IDE do JAVY
Co jeszcze może być nie tak?
Pomysł używania IDE do programowania w RoR, szczegolnie ze wiedzy masz malo.
Nikt kto przetrwal i poswiecil czas na te kilka punktow nie zaluje na pewno
Gotar ma absolutna racje.
Ja tez probowalem zaczynac od Netbeansow, nie byl to zbyt efektywny okres nauki. Latwo mozna wtedy ulec sfrustracji i powiedziec ze railsy sa be…
Nie ma sie czego obawiac, te konsolowe komendy naprawde są proste i dają o wiele większą kontrolę nad projektem.
Dzięki za wskazówki…na pewno się przydadzą…bo z czasem zagłębię się w RoR, ale na ten czas mam do napisanie projekt na studiach który skupia się na oraclu przede wszystkim no a opakowanie tego zostało mi narzucone i w zasadzie zależy mi tylko na najprostszych funkcjach w związku z czym nie mam tyle czasu. Z mySql nie miałem tego problemu jaki mam teraz z oracle…tam wszystko od ręki się generowało. Liczyłem tutaj na jakąś pomoc żeby jakoś sie z tym uporać. Mam nadzieję że ktoś jeszcze mi w tym pomoże…
Pozdrawiam
Znalazłem jakieś tutoriale konsolowe RoR + Oracle…wklejam je tutaj…być może się to komuś przyda:
http://www.oracle.com/technology/pub/articles/haefel-oracle-ruby.html
http://www.oracle.com/technology/pub/articles/saternos-ror-faq.html
Spróbuje z nich skorzystać, może uda się z tym coś zdziałać.
Mam jeszcze pytanie…czy na Windows 7 mogą być problemy jakieś?..bo akurat takim system dysponuje w ostatnim czasie…
@michał_sz
z tym generatorem to troche dziwnie
jak kożystasz z konsoli masz generalnie podać nazwe modelu(zasobu) z którego zostanie wygenerowana nazwa kontrolera
podajesz do tego pola w bazie (coś w stylu nazwa:typ nazwa2:typ2)
skoro w netbeans jest to inaczej rozwiazane i masz podac actions to podejrzewam ze masz wpisac:
index show new create edit update destroy
ale nie spodziewaj sie ze dostaniesz cos ponad
[code=ruby]class NazwaController < ApplicationController
def index
end
def show
end
…
end[/code]
Przeanalizowałem pierwszy artykuł i utworzyłem wszystko pod swoją tabelę “names”, ale po wyświetleniu indexu pojawia sie następujący błąd:
[code] ActionController::RoutingError in Names#index
Showing app/views/names/index.html.erb where line #13 raised:
name_url failed to generate from {:action=>“show”, :controller=>“names”, :id=>#<Name id: #BigDecimal:4ba04ec,‘0.22E2’,4(8), imie: nil, nazwisko: nil>}, expected: {:action=>“show”, :controller=>“names”}, diff: {:id=>#<Name id: #BigDecimal:4ba026c,‘0.22E2’,4(8), imie: nil, nazwisko: nil>}
Extracted source (around line #13):
10:
Coś niedokładnie przepisujesz.
Błąd jest w tych dwóch linijkach:
13: <td><%= link_to 'Show', name %></td>
15: <td><%= link_to 'Destroy', name, :confirm => 'Are you sure?', :method => :delete %></td>
To powinno wyjaśnić sprawę
http://www.apohllo.pl/guides/routing_outside_in.html
Serdeczne dzięki za pomoc:)
A jesteś w stanie podpowiedzieć na czym polega ten błąd? od czego jest zależny?
Oczywiście przeanalizuje ten artykuł ale gdybyś jednak mógł coś podpowiedzieć.
Jeszcze raz dzięki
http://railsapi.com/doc/rails-v2.3.5/classes/ActionView/Helpers/UrlHelper.html#M002452
link_to, jako drugi parametr wymaga ścieżki, czyli np name_path(name), a Ty podajesz sam obiekt, czyli w tym wypadku name.
Bardzo dziękuje…mam nadzieję że tym razem odpali:)
Ale przecież można przekazać obiekt do link_to:
Because it relies on url_for, link_to supports both older-style controller/action/id arguments and newer RESTful routes. Current Rails style favors RESTful routes whenever possible, so base your application on resources and use
[code=ruby] link_to “Profile”, profile_path(@profile)
or the even pithier
[code=ruby] link_to “Profile”, @profile
Jak rozumiem to w tym przykładzie “profiles” to nazwa tabeli w oraclu, “Profile” - nazwa kontrolera, “Profiles” - to ?
czyli 13 linijke:
<td><%= link_to 'Show', name %></td>
miałbym zastąpić w ten sposób:
[code]link_to “Show”, name_path(@name)
Proszę mnie poprawić jeśli coś jest nie tak
Pozdrawiam
Chyba coś pokręciłem z tymi linijkami:
link_to "Profile(-moja nazwa?)", profile_path(@profile(-model?)
# => <a href="/profiles(-nazwa kontrolera?)/1">Profile(-moja nazwa?)</a>
racze tak:
link_to “Profile - #{profile.name}”, profile_path(@profile)
jak juz chcesz nazwe
już troche ruszyło do przodu i teraz mam problem z edycją:
mój plid edit.html wygląda tak:
<% form_for :name, :url => { :action => "update" } do |f| %>
<%= f.label :imie, 'Imie' %>:
<%= f.text_field :imie %><br />
<%= f.label :nazwisko, 'Nazwisko' %>:
<%= f.text_field :nazwisko %><br />
<%= submit_tag "Save changes" %>
<% end %>
i kiedy próbuje zrobić update to wyświetla się coś takiego:
No action responded to 66. Actions: create, destroy, edit, index, new, show, and update
oczywiście 66 to id.
Tak jakby nie czytało akcji “update”, ale jak np dam “create” to tworzy nowy rekord, ale tak jakby nazw innych akcji nie widziało…
Jeszcze jeden problem…kiedy np chce zobaczyć jakiś rekord po naciśnięciu “show” to zamiast id np 66 pojawia się 66.0 i to jest błąd
mój plik index wygląda tak:
[code]
Imie | Nazwisko | ||
---|---|---|---|
<%=h name.imie %> | <%=h name.nazwisko %> | <%= link_to "Show", {:action => 'show', :id => name.id} -%> | <%= link_to 'Edit', {:action => "edit", :id => name.id} %> |
<%= link_to ‘New name’, new_name_path %>[/code]