Automatyczne modele w ActiveRecord

Jak automatycznie utworzyć modele na podstawie istniejącej bazy danych? Baza jest używana przez aplikację w PHP i wraz ze zmianami tamtej aplikacji czasem ulega zmianie. Dlatego chciałbym budować modele w jakiś “auto-magiczny” sposób. Da się coś takiego zrobić?

Jeśli masz tam klucze obce, a nazwy są utrzymane w formie która da się logicznie i konsekwentnie mapować to da się coś takiego zrobić.

Poprawię pytanie. Jak coś takiego zrobić?

To bardzo zły sposób myślenia.

Jeśli masz dwie aplikacje korzystające z tej samej bazy to niestety musisz rozwijać dwie aplikacje. Nie masz co liczyć na to, że po zmianach z poziomu PHP aplikacja w Ruby będzie nadal działać jak należy.

Nastaw się na na zwyczajne równoległe rozwijanie aplikacji w Ruby, zwłaszcza z naciskiem na testy. Może szybko się okazać, że zaczniesz wychwytywać błędy, które ma aplikacja PHP :slight_smile:

Przez tą pogoda za oknem mam ochote ciebie ztrolować tak żebyś się już tutaj więcej z takimi pytaniami nie pokazywał, ale zacisne zęby… Możesz zrobić coś takiego poprzez napisanie generatora tworzącego modele na podstawie nazw tabel w bazie danych, oraz relacje do modeli na podstawie kluczy obcych. Rozwiążesz tym większość podstawowych zależnosci… podkreślam podstawowych, do tego będziesz miał od cholery wyjątków i problemów do rozwiązania po drodze, całość przekroczy pewnie 4 krotnie czas realizacji tego od 0 w rails.

To może się przydać lagacy_data

Nie powiedziałeś nic na temat tego do jakich zastosowań ci to potrzebne. Jeśli nie ma tam większej logiki i chcesz tylko robić proste operacje to może prościej by było pójść w stronę http://sequel.rubyforge.org/ bo wtedy nie musisz mieć klasy dla każdej tabeli w bazie by zacząć coś z nią robić.