14

Używam acts-as-taggable-on, aby umożliwić oznaczanie moich modeli NewsItem i MediaItem. Domyślnie dostęp do znaczników modelu przy użyciu tag_list dla tablicy nazw znaczników lub bezpośrednio poprzez powiązanie przy użyciu tags do zbierania ActsAsTaggableOn::Tag s, powoduje, że znaczniki są w dowolnej kolejności. Chciałbym, żeby zawsze były alfabetyczne. W dokumentacji tworzenia domyślnego zamówienia nie ma wzmianki, poza sposobem zachowania porządku, w którym zostały utworzone znaczniki (za pomocą modelu acts_as_ordered_taggable).Zamawianie znaczników alfabetycznie domyślnie za pomocą aktów jako możliwych do oznaczenia na

Oczywiście mogę je zamówić za każdym razem, gdy zadzwonię pod numer tags, używając news_item.tags.order(:name), ale chciałbym, aby było to domyślne zachowanie w całej aplikacji i nie chcę duplikować zamawiania, gdziekolwiek potrzebuję użyć znaczników.

W jaki sposób mogę skonfigurować mój model, aby jego powiązanie zawsze zwracało jego tagi w kolejności alfabetycznej?

Odpowiedz

5

Obawiam się, że ten rodzaj zamawiania nie może zostać wykonany w bieżącej wersji klejnotów act-as-taggable-on. Z pliku source code wynika, że ​​ten klejnot faktycznie obsługuje tylko porządkowanie według identyfikatorów (zachowuje kolejność tworzenia) lub w ogóle nie zamawia.

Istnieje , który umożliwiałby zamawianie po nazwie lub jakimkolwiek innym atrybucie, ale aktywność tego klejnotu wydaje się być dość nieaktualna (żądanie ściągnięcia było już otwarte od ponad roku). Być może spróbuj zapytać o status tej prośby o pociągnięcie.

Powiązane problemy