DraftVersion base model and very basic admin pages
This commit is contained in:
@@ -45,6 +45,7 @@ module Abilities
|
||||
can [:search, :edit, :update, :create, :index, :destroy], Banner
|
||||
|
||||
can [:manage], ::Legislation::Process
|
||||
can [:manage], ::Legislation::DraftVersion
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
12
app/models/legislation/draft_version.rb
Normal file
12
app/models/legislation/draft_version.rb
Normal file
@@ -0,0 +1,12 @@
|
||||
class Legislation::DraftVersion < ActiveRecord::Base
|
||||
VALID_STATUSES = %w(draft published)
|
||||
|
||||
acts_as_paranoid column: :hidden_at
|
||||
include ActsAsParanoidAliases
|
||||
|
||||
belongs_to :process, class_name: 'Legislation::Process', foreign_key: 'legislation_process_id'
|
||||
|
||||
validates :title, presence: true
|
||||
validates :body, presence: true
|
||||
validates :status, presence: true, inclusion: { in: VALID_STATUSES }
|
||||
end
|
||||
@@ -2,6 +2,8 @@ class Legislation::Process < ActiveRecord::Base
|
||||
acts_as_paranoid column: :hidden_at
|
||||
include ActsAsParanoidAliases
|
||||
|
||||
has_many :draft_versions, class_name: 'Legislation::DraftVersion', foreign_key: 'legislation_process_id'
|
||||
|
||||
validates :title, presence: true
|
||||
validates :description, presence: true
|
||||
validates :target, presence: true
|
||||
|
||||
Reference in New Issue
Block a user