Thread View: pl.comp.lang.ruby
3 messages
3 total messages
Started by edek
Sat, 05 Apr 2008 15:10
[RoR 2.0.2] Plugin - rozszerzanie modelu
Author: edek
Date: Sat, 05 Apr 2008 15:10
Date: Sat, 05 Apr 2008 15:10
36 lines
1797 bytes
1797 bytes
Witam, mam model DatabaseItem < (dziedziczy standardowo po
ActiveRecord::Base). Stworzyłem sobie plugin. W init.rb daję require
"costam". W lib/costam.rb daję require "mojplugin/database_item". W
lib/mojplugin/database_item.rb mam kod mniej więcej tej postaci
module Mojmodul
module InstanceMethods
def funkcja
":)"
end
end
end
DatabaseItem.send(:include, MojModul::InstanceMethods)
I teraz w konsoli MOGĘ odwołać się np. do DatabaseItem.find(:first).funkcja
W kontrolerze piszę sobie (gdzie "item" to jakiś obiekt tej klasy)
item.send("funkcja")
i mi wywala, że takowej nie ma. Korzystam z send, bo w prawdziwym
przypadku nazwa funkcji jest generowana. Zauważyłem, że pomaga dopisanie
w kontrolerze
DatabaseItem.send(:include, MojModul::InstanceMethods)
wtedy widzi ją OK.
O co chodzi? Czemu dopisanie tego w skrypcie inicjalizowanym przy
starcie aplikacji działa w konsoli a w kontrolerze nie?
Liczę na Waszą pomoc, bo trochę głupieję, nie mogę się doszukać, gdzie
jest problem.
m.
Re: Plugin - rozszerzanie modelu
Author: piotr.solnica
Date: Sun, 06 Apr 2008 17:28
Date: Sun, 06 Apr 2008 17:28
17 lines
1876 bytes
1876 bytes
On Apr 5, 5:10 pm, edek <e...@zkrainykredek.pl> wrote: > Witam, mam model DatabaseItem < (dziedziczy standardowo po > ActiveRecord::Base). Stworzyłem sobie plugin. W init.rb daję require > "costam". W lib/costam.rb daję require "mojplugin/database_item". W > lib/mojplugin/database_item.rb mam kod mniej więcej tej postaci > > [ciach] A sprobuj umiescic ten modul w pliku o innej nazwie, niz database_item.rb (innymi slowy nazywajacym sie tak, zeby nie odpowiadal nazwie Twojego modelu AR) i sprawdz czy zadziala. Smieszne, ale moze pomoc :) > O co chodzi? Czemu dopisanie tego w skrypcie inicjalizowanym przy > starcie aplikacji działa w konsoli a w kontrolerze nie? Czary-mary RoR? Trudno powiedziec, trzeba by to zdebugowac.
Re: Plugin - rozszerzanie modelu
Author: edek
Date: Sun, 06 Apr 2008 22:29
Date: Sun, 06 Apr 2008 22:29
4 lines
989 bytes
989 bytes
Odpowiedź jest tutaj http://www.rubyonrails.pl/forum/viewtopic.php?pid=4871#p4871 m.
Thread Navigation
This is a paginated view of messages in the thread with full content displayed inline.
Messages are displayed in chronological order, with the original post highlighted in green.
Use pagination controls to navigate through all messages in large threads.
Back to All Threads