Podejmuję się nazywania całkiem poważnie, więc myślę, że bardzo trudno o dobre nazwy dla moich modeli ActiveRecord. Jednak często wymyślam nazwę i ma ona pewien konflikt z zastrzeżoną nazwą, albo w bazie danych, albo w Ruby lub Rails. Nazwy modeli lub pól, takie jak set
lub group
. Czasami problem nie jest od razu widoczny. Czy istnieje lista nazw, których nie możemy użyć w nazwach naszych modeli i lista nazw pól?Zastrzeżone nazwy z modelami ActiveRecord
Odpowiedz
Oto kilka środków na początek:
Rails reserved words. Ta wydaje się dość aktualna, ostatnia aktualizacja z lutego 2010 roku. Nawet wykracza poza szyny i zawiera listę typowych konfliktów nazewniczych z SQL.dead- Reserved words in rails. Tutaj znajduje się aplikacja heroku z możliwym do przeszukiwania zestawem zarezerwowanych słów. Zawartość tego wydaje się być zarządzana przez użytkowników, więc każdy z kontem może dodać nowe słowo.
o człowieku ... teraz wydaje się, że każde słowo jest brane! Będę musiał nazwać moje modele z prefiksem lub postfiksem; 'ScottCube' lub' Cube2'! –
Co oznacza "Original Rails Wiki" w tej tabeli? –
Otwórz konsolę szyny i rodzaj MyModel.methods
Wszystkie metody wymienione są zarezerwowane słowa.
Może to prowadzić do fałszywych alarmów. Istniejące metody i nazwy kolumn będą wyświetlane jako pierwsze, aby założyć, że cały czas używają zastrzeżonego słowa. – Substantial
@gg_s Łatwo sobie z tym poradzić, jeśli masz inny model bez wątpliwej kolumny – MCB
Lub po prostu wykonaj ActiveRecord :: Base.methods ... –
Nazwa kolumny type
jest również zastrzeżona i nie jest wyświetlana na liście MyModel.methods
!
The single-table inheritance mechanism failed to locate the subclass: 'f'. This error is raised because the column 'type' is reserved for storing the class in case of inheritance. Please rename this column if you didn't intend it to be used for storing the inheritance class or overwrite Project.inheritance_column to use another column for that information.
Czy ktoś ma doświadczenia z nazwami takimi jak category
, class
, transaction
, group
, itd.? Wszystko przychodzi mi na myśl, kiedy kategoryzuję dane w ramach mojej db ....
- 1. dodaj powiązania z istniejącymi modelami
- 2. ASP.NET MVC Routing vs. zastrzeżone nazwy plików w systemie Windows
- 3. Szyny: has_many przez nie zwracanie poprawnie z modelami z podziałem na nazwy
- 4. Kompleksowe powiązanie FactoryGirl z wieloma modelami
- 5. JavaScript zastrzeżone słowo "zaprogramowany"
- 6. Dumpdata z niezarządzanymi modelami
- 7. CodeIgniter ActiveRecord nazwy pól w poleceniu JOIN
- 8. Używanie JSHint z Express.js/'delete' (słowo zastrzeżone)
- 9. Szyny z wieloma modelami zagnieżdżonymi powoduje problemy z grupami radiowymi
- 10. Jak najlepiej obsługiwać połączenia z modelami baz danych za pomocą ActiveRecord?
- 11. Szyny: utrzymywanie DRY z modelami ActiveRecord, które mają podobne atrybuty złożone
- 12. Kolekcja kręgosłupa z wieloma modelami?
- 13. Kiedy oprogramowanie staje się "zastrzeżone"?
- 14. Jak zrobić tag_cloud z wieloma modelami z tabelą sprzężenia?
- 15. Jak wyodrębnić wspólne named_scopes z modeli ActiveRecord
- 16. Django: Odniesienie między modelami
- 17. Laravel Wymowne relacje z rozszerzonymi modelami
- 18. Jak zintegrować CanCan z wieloma modelami devise?
- 19. Chętne skojarzenia obciążenia z aktywnymi modelami szeregowymi
- 20. Parsuj JSON z nazwami pól, które zawierają zastrzeżone słowa kluczowe
- 21. Zastosowanie Carrierwave z jednego do wielu relacji między modelami
- 22. Czy istnieją narzędzia ETL integrujące się z modelami Rails?
- 23. Sequel w połączeniu z ActiveRecord?
- 24. Usuń zamówienie z zakresu ActiveRecord
- 25. ActiveRecord wybierz z wyjątkiem kolumn
- 26. Yii2 ActiveRecord szyderczy z kpiną
- 27. Korzystanie z aplikacji harmonogramu Django z własnymi modelami
- 28. ActiveRecord :: SubclassNotFound
- 29. Problem z korektorem ustawiającym w ActiveRecord
- 30. Dlaczego słowo kluczowe instanceof nie działa z modelami Backbone js?
[ta strona ma niektóre z nich] (http://en.wikibooks.org/wiki/Ruby_on_Rails/ActiveRecord/Naming) Ale ja mam "udało się znaleźć wyczerpującą listę. Może być coś fajnego, żeby zacząć wiki. – Magicmarkker