Goldber + Active_Scaffold - lista rozwijana - POmocy

Witam,

Mam problem ze stworzeniem listy rozwijanej,

Mam zainstalowany Goldberg, Active Scaffold i chcaiłbym utworzyć prostą listę rozwijaną

Kod wygląda tak:
—-—-—-—-—-—-—-—-—-—

class Kontrole < ActiveRecord::Base belongs_to :kindofcontrol
end

class Kindofcontrol < ActiveRecord::Base has_many :kontroles
end

class KindofcontrolsController < ApplicationController active_scaffold :kindofcontrol do |config| config.columns = [:id, :kindofcontroldesc, :created_at, :updated_at] end
end

class KontrolesController < ApplicationController active_scaffold :kontrole do |config| config.label = “Sprawy przeanalizowane” config.columns = [:id, :nractcase, :timeofcontrol, :payer_id, :kindofcontrol_id] end
end

Chcę wyświetlić listę rozwijaną “kindofcontroldesc” z tabeli “kindofcontrols”
w formularzu uzupełnianym do tabeli “kontroles”

W goldbergu nie ma layout-ów, więc nie mogę zrobić w nim wstawki.

Proszę pomocyyyyyy

Czy nikt nie zna rozwiązania ?

??

Spróbuj na angielskich listach dyskusyjnych.

Goldberg jest słabo znany z tego co wiem (ostatnio wpadłem na niego zupełnie przypadkiem, podejrzewam, że większość osób nawet o nim nie słyszała). ActiveScaffold też raczej rekordów popularności nie bije - przydatny głównie przy prototypowaniu moim skromnym zdaniem.

Stąd brak odpowiedzi tutaj.

Eno, akurat ActiveScaffold jest dosyć popularny, na pewno wśród stałych bywalców #rubyonrails.pl. AS nadaje się świetnie do wszelakiego rodzaju paneli admina/backendów. Tego Goldberga zupełnie nie znam, przy AS mogę spróbować pomóc. @global, musisz postarać się opisać problem jaśniej (ja nie wiem o co kaman) i napisz czy problem dotyczy bardziej AS czy goldberga.

Goldberg nie znam, natomiast ActiveScaffold jak najbardziej i z powodzeniem (i nawet nie mam ochoty na zastępowanie jego funkcjonalności “normalnym” kodem w prostych zastosowaniach) używam od już-niedługo-roku w BitsPudle :slight_smile:

Jezeli dobrze zrozumialem, to:

[code]#w KontrolesKontroler

AS v1.0

config.columns[:kindofcontrol].ui_type = :select

lub AS v1.1

config.columns[:kindofcontrol].form_ui = :select

#opcjonalnie w modelu Kindofcontrol nadpisac met to_label
def to_label
“#{title} (#{desc})”
end[/code]
http://www.activescaffold.com/docs/api-column
http://activescaffold.com/tutorials/to_label
dodatkowo moze sie przydac
http://activescaffold.com/tutorials/custom-association-options

jak nie tak to moze form override (helper albo partial) bedzie bardziej na miejscu
http://www.activescaffold.com/docs/form-overrides

A Goldberga nie znam, wiec nie wiem czy ww. ma zastosowanie. Sam AS jest calkiem niezle konfigurowalny jak sie przeanalizuje api.

wyświetla mi się zwykle pole tekstowe
nie mam listy rozwijanej ;((

zrobiłem liste poprzez helper, ale podczas edycji czy dodaniu nowego jest błąd,
—-—-—-—-—-—-—-—-—-—
kindofcontrols_helper.rb
-—-—-—-—-—-—-—-—-——
def kindofcontrol_id_form_column(record, input_name) select :record, :kindofcontrol_id, Kindofcontrol.find(:all, :order =>
‘id’).collect{|p| [p.kindofcontroldesc, p.id]}, { :prompt => ‘Wybierz rodzaj kontroli’ }, { :name => ‘[id]’ }
end

z wykorzystaniem helpera przy update są następujące błędy:
RJS Error [Object error]
potem
$$(”#kontroles-update-1-form a.cancel”).first().link.close_with_refresh();
i koniec
nie zapisują mi się wartości wybrane z list rozwijanych ( w pozostałych zapisują)
ale taki błąd jest w IE 6.0.2900.2180.xpsp_sp2_gdr.070227-2254

w Operze 9.26 – po prostu nie zapisuje – bez komunikatu błędu
w FireFox 2.0.0.13 – po prostu nie zapisuje – bez komunikatu błędu

coś mi się wydaje, że czegoś nie zapisałem w kodzie, że nie ma przekazania wartości wybranej przez użytkownika do zapisania w bazie ?

A i oprócz tego, jak z ręki w bazie wpisałem id do :kindofcontrol_id to na liście (list) wyświelta mi się tylko id i nie pobiera nazwy tego id z tabeli kindofcontrols (czyli z pola :kindofcontroldesc)

Gdzie coś pochrzaniłem ?

Mi się zdarzało czasami przy prototypowaniu tylko i nie zachwyciły mnie efekty. Ale to było dawno dawno temu, niedługo po wypuszczeniu. Od tamtego czasu pewnie sporo się zmieniło.

Będę musiał mu dać drugą szansę :slight_smile:

W config.columns zmien ‘kindofcontrol_id’ na samo ‘kindofcotrol’, zeby wiedzial, ze chodzi o asocjacje a nie sama kolumne tabeli. Najlepie zakomentuj cale config.columns zeby zobaczyc jak wyglada syt. defaultowa.

WIELKIE Dzięki PAWEL - :slight_smile: - YOU ARE THE BEST !!!
pomogło to i poprzednie - zmieniałem, ale za dużo na raz

Jestem nowy w Rail-sach, a tym bardziej AS - może z 2 tygodnie w sumie

Proszę o podpowiedź jak w Active Scaffold przypisać wartość do kolumny,
czyli np. jaki user dodaje nowy rekord.
Patrzę, szukam, sprawdzam, ale nadal mam błędy:

@analiticowner = Goldberg.user.id
self[:analiticowner] = Goldberg.user.id

Goldberg.user.id -to jest raczej ok - wyświetla wartość, ale samo przypisanie nie działa

Ktokolwiek wie ?

Dziękuję już znalazłem rozwiązanie
Jak się często okazuje - jest banalnie proste :slight_smile:

[quote=global]z wykorzystaniem helpera przy update są następujące błędy:
RJS Error [Object error]
potem
$$(”#kontroles-update-1-form a.cancel”).first().link.close_with_refresh();[/quote]
Rozwiązanie

Dzięki wlodi :slight_smile: