2009-10-23 13 views
5

Mam bazę danych z tabelami. Chcę utworzyć model w mojej aplikacji Railsowej z istniejącej tabeli. Z tego co wiem, taka funkcjonalność jest dostępna, i odbywa się w następujący sposób:

script/generate scaffold model_name --skip-migration


oczywiście, określona mojej bazy danych w database.yml pliku. Rusztowanie generowało dla mnie model z kontrolerem i widokami. Moja nazwa tabeli nie jest taka, jak musi być w przypadku Railsów (jest niepoprawna, a nie po konwencjach), i dodała set_table_name do mojego kontrolera. Ale kiedy wywołuję metodę indeksu, na mojej stronie mam tylko zestaw symboli #, ale nie dane z bazy danych. W moim index.html.erb mam tylko wygenerowany kod przez rusztowanie. Jak mogę wydrukować dane mojej bazy danych?
Model z istniejącego stołu w Railsach 2

+0

otworzyłem źródło mojej stronie i zobaczyłem, że mam coś takiego: # Yurish

+0

można wkleić w treści swojej index.h plików tml.erb –

+0

klients Spis

<% @ klients.each zrobić | klient | %> <% end %>
<% = link_to 'Show', klient%> <% = link_to 'Edit', edit_klient_path (klient)%> <% = link_to 'zniszczyć', klient,: confirm = > 'Czy na pewno?': metoda =>: usuwanie%>

<% = link_to 'Nowy klient', new_klient_path%> – Yurish

Odpowiedz

7

Czy wygenerowałeś plik schematu z istniejącej bazy danych? Jeśli uruchomisz komendę, a następnie ponownie wygenerujesz swoje rusztowanie, powinno to naprawić problem.

Dodatkowo możesz wypróbować Dr Nic's Magic Model generator. To wygeneruje modele dla wszystkich istniejących tabel i spróbuje odgadnąć relacje. Prawdopodobnie to nie zadziała, jeśli nazewnictwo tabel nie jest zrozumiałe dla szyn.

UPDATE

I zazwyczaj nie używać domyślnego rusztowanie jednak ja testowałem to sobie i wydaje się, że jeśli pominąć migrację i nie przechodzą żadnych pary nazwa kolumna/typ następnie generator rusztowanie nie będzie utwórz cokolwiek w szablonie, aby wyrenderować kolumny.

Masz dwie możliwości tutaj albo

  1. Pass w parach nazwa kolumny, jak również pominąć-migracji lub
  2. Pobierz Ryan Bates Nifty Scaffold generator który stworzy szkielet z nazwami kolumn, nawet jeśli podasz - -skip migracji
+0

mam postgreSQL, a ja generowane schematu . Problem nie został rozwiązany. – Yurish

+0

Dzięki!Spróbuję, ale wygląda na to, że masz rację! – Yurish

+0

To było dla mnie niesamowite. Stworzyłem nową aplikację, wskazałem ją na bazę danych ze starej bazy danych aplikacji (bez prowadnic) i utworzyłem plik schema.rb do tworzenia tabel migracji dla moich 358 tabel !!! Następnie wskażę aplikację w innej bazie danych i użyj tego pliku schematu, aby utworzyć go w tej innej bazie danych. –

Powiązane problemy