Aplikacja w railsach

Witam

Zaczalem dla treningu robic portal w railsach. Zrobilem logowanie i podzial na grupy uzytkownikow. Wyglada to tak ze jest admin i moderator. Gdy admin doda newsa zostaje on wyswietlony na stronie glownej portalu. Zas gdy wiadomosc doda moderator trafia ona wpierw do admina do zatwierdzenia, jesli admin ja zatwierdzi pojawia sie ona rowniez na stronie. Problem zaczyna sie gdy, wiadomosc zostanie zaakceptowana przez admina a moderatorowi przypomni sie ze jednak czegos nie dodal lub cos zle napisal i chce ja jeszcze raz edytowac. Zrobilem narazie tak ze przy ponownej edycji post znika ze strony glownej i pojawia sie dopiero po ponownej akcpetacji przez admina. Jednak moim celem jest to, aby edytowany przez moderatora post zostal wyswietlany na glownej stronie w starej wersji az do momentu zaakceptowania przez admina. Jesli ktos jest mi wstanie pomoc prosilbym o kontakt meilowy thelirka@gmail.com lub gg 2701924.

Z gory dzieki :slight_smile:

A moze uzyj acts_as_versioned ?

Popieram - acts_as_versioned stosunkowo łatwo zaimplementować.

Kłopoty mogą wystąpić przy asocjacjach, Jest coś takiego jak acts_as_versioned_associations. Kiedyś był bardzo niedopracowany, ale może teraz jest lepiej.

mozecie powiedziec cos wiecej. Zainatslowalem ten plugin ale nie wiem jak go dokladnie uzywac a nie moge znalesc nic ciekawego o nim w internecie

Cholera, ciekawe, bo mi trzy pierwsze linki z googla zwracają zestaw bardzo sytej dokumentacji:
http://www.google.pl/search?q=acts_as_versioned&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-US:official&client=firefox-a

czyli jesli dobrze rozumiem. Zeby go uzyc robie migracje jednej tabeli np. Posts potem druga migracje w ktorej wpisuje kod:

class AddPostsVersions < ActiveRecord::Migration
require_dependency ‘post’
def self.up
# create_versioned_table takes the same options hash
# that create_table does
Post.create_versioned_table
end

def self.down
Post.drop_versioned_table
end
end

Pozniej w modelu tej tabeli wpisuje :

class Page < ActiveRecord::Base
acts_as_versioned
end

Dokładnie tak