about summary refs log tree commit diff stats
path: root/app/models
diff options
context:
space:
mode:
Diffstat (limited to 'app/models')
-rw-r--r--app/models/stream.rb13
-rw-r--r--app/models/update.rb12
2 files changed, 25 insertions, 0 deletions
diff --git a/app/models/stream.rb b/app/models/stream.rb new file mode 100644 index 0000000..7faa370 --- /dev/null +++ b/app/models/stream.rb
@@ -0,0 +1,13 @@
1class Stream < ApplicationRecord
2 has_many :records, as: :recordable, inverse_of: :recordable
3 has_many :updates
4
5 validates :title, presence: true
6 validates :slug, presence: true, format: /\A[-a-z0-9]+\z/
7
8 accepts_nested_attributes_for :records, allow_destroy: true
9
10 def path
11 "/thinks/#{slug}"
12 end
13end
diff --git a/app/models/update.rb b/app/models/update.rb new file mode 100644 index 0000000..41cc453 --- /dev/null +++ b/app/models/update.rb
@@ -0,0 +1,12 @@
1class Update < ApplicationRecord
2 has_many :records, as: :recordable, inverse_of: :recordable
3 belongs_to :stream
4
5 validates :stream, :body, presence: true
6
7 accepts_nested_attributes_for :records, allow_destroy: true
8
9 def path
10 "/thinks/#{stream.slug}\#update-#{id}"
11 end
12end