Spree wykonanie i instalacja własnego modułu

Witam ma oto taki problem.
Próbuje wykonać prostą subskrybcję do newslettera aby po kliknięciu przycisku OK dodało maila do tabeli w bazie i w panelu administracyjnym wyświetliło listę dodanych maili, wiem że to prosta sprawa w zwykłym frameworku rails poszło by to bez trudu, problem rozchodzi się o spree, wyczytałem w dokumentacji, że to należy zrobić przez create extantions, ale walcze już od tygodnia z tym i nie mam zielonego pojęcia jak to ogarnąć.
Link do szablonu który wdrażam w spree http://rafal-serwer.gogler.eu/intimiti/

Czemu robisz to samemu? Jakiś custom feature tam ma być?

Bo jeśli nie, to zapewne jest jakiś plugin do tego, np. https://github.com/markalinn/Spree-Newsletter-Subscribers (pierwszy z brzegu, nie testowałem go).
Jeśli samemu to tworzysz extension, tam musisz zrobić migrację (bo pewnie coś do bazki będziesz dorzucać), jakiś view do admin panelu i ten publiczny.

Problem polega że chciałem zainstalować te moduły ale ja robię na spree 1.1.3 i mam problem bo do tej wersji nie ma dużo modułów, dlatego widzę że muszę pisać własne.

W tym pluginie co Ci dałem:

s.add_dependency ‘spree_core’, ‘~> 1.1.3’

Widzę w gemfile, że już go wcześniej instalowałem ten moduł, ale problem polega na tym , że w instrukcji nigdzie nie jest napisane jak podłączyć go do zewnętrznego widoku. Poza tym będą mi potrzebne jeszcze inne moduły i umiejętność edytowania, dodawania swoich modułów mi się przyda.
Oto pozostałe szablony, które jeszcze dojdą do strony:
http://rafal-serwer.gogler.eu/intimiti/index2.html
http://rafal-serwer.gogler.eu/intimiti/index3.html
http://rafal-serwer.gogler.eu/intimiti/index4.html
http://rafal-serwer.gogler.eu/intimiti/index5.html
aż do index12.htm

najgorsze jest to że dużo rzeczy jest już gotowych w spree extenctions tylko nie do wersji 1.1.3

Nie bardzo wiem, jak Ci pomóc - tzn gdzie i z czym masz problem przy tworzeniu swoich wtyczek.
Na początek zajrzyj tutaj:
http://guides.spreecommerce.com/creating_extensions.html

Tym bym się aż tak bardzo nie przejmował - w najgorszym wypadku forkujesz i zmieniasz co tam trzeba dla Twojej wersji Spree.

[quote=novotarq]Nie bardzo wiem, jak Ci pomóc - tzn gdzie i z czym masz problem przy tworzeniu swoich wtyczek.
Na początek zajrzyj tutaj:
http://guides.spreecommerce.com/creatin … sions.html[/quote]
Ten tutorial jest napisany dla starszych wersji spree robiąc wszystko zgodnie z tym tutorialem w wersji 1.1.3 nic niedziała.

Chcę zainstalować ten moduł gem ‘spree_flexi_variants’, :git=>‘git@github.com:jsqu99/spree_flexi_variants.git’
w terminalu mam to

Dostajesz permission denied, sprawdź konfig gita.
Na przyszłośc wklejaj tekst tu, albo np na pastie.org

A i jeszcze: ja bym skompilował Rubiego z Yamlem jednak (dostajesz tam warninga).

Zmieniłem :git=>‘git@github.com:jsqu99/spree_flexi_variants.git’ na :git=>‘git://github.com/jsqu99/spree_flexi_variants.git’ ale teraz pojawiło się to

Zaciągnij spree_flexi_variants z brancha dla Twojej wersji Spree.

Wow. powiem szczerze że nie wiedziałem o czymś takim… naprawdę wielkie dzięki :slight_smile:

Co do subscriptions jak to podłączyć do strony?

W szablonie http://rafal-serwer.gogler.eu/intimiti/index3.html muszę połączyć powiązane produkty np biustonosz do majtek itp. czy jest taki moduł w spree ?

No problem, akurat te mainstreamowe(niektóre third party też) pluginy są wersjonowane w ten sposób.

Stwórz widok z jakimś submitem, obsłuż to w kontrolerze i gotowe - jak to w Railsach :slight_smile:

AFAIR jest: https://github.com/spree/spree_related_products

Oto rzuty ekranu dotyczące subscription :


Problem polega na tym, że cokolwiek wpiszę w controller nic nie działa a połączenie z bazą zostaje przerwane.

Mogę nawet wpisać w def index ala ma kota i powinno wyrzucić mi błąd w konsoli a nic się nie dzieje tak jak by nie było dostępu do klasy.

routes.rb (resource) -> controller -> widok -> partial. Poza tym czy jesteś pewien że to ten model?

Nie napewno nie ten model, akurat tutaj próbowałem samemu zrobić jakiś model i nic mi nie wychodziło.
W readme spree_newsletter_subscribers jest tylko to : And…Insert partial into views where appropriate nie ma nic jak to podłączyć do strony, jak np mogę wdrożyć swój newsletter
Panel admina wygląda tak

screenchoty konsoli i edytora? o_O

używaj znacznika [ code ] (np. [ code=ruby ], bez spacji oczywiście), ewentualnie wrzuć tutaj: https://gist.github.com/

A poza tym:

  1. Nie nazywaj klas polskimi nazwami.
  2. Jako taba używaj dwóch spacji (w ST2 łatwo skonfigurować takie domyślne użycie taba).

Co do samego extensiona - zajrzałem tam i nie widzę by robił to, co ma robić :slight_smile:

Musisz sobie stworzyć jakąś route, do niej kontroler i widok (bo model jakiś tam niby jest).
Nie wiem, czy nie lepiej zrobić sobie takie coś samemu from scratch (nie zapomnij później wrzucić tego na githuba :slight_smile: )
Jakieś skrawki podobnego plugina widziałem też tutaj: https://github.com/complistic-gaff/spree-newsletters

Trochę inaczej robię zainstalowałem spree_mail_chimp on ma te wszystkie moduły które mnię interesują tylko po kliknięciu przycisku subscribe dostaję błąd : uninitialized constant Hominid::ListError ?