diff options
author | Kelly Rauchenberger <fefferburbia@gmail.com> | 2018-07-03 13:58:57 -0400 |
---|---|---|
committer | Kelly Rauchenberger <fefferburbia@gmail.com> | 2018-07-03 14:01:41 -0400 |
commit | 8e15dbd73035c2a2198a2828a20ddcebe0739823 (patch) | |
tree | f93ada8d2c3c06e8cf1908bf5b0e22b1b54dd956 /app/models | |
parent | 49b11f2864f75bcfb8d0d01439939ed68aa90b8f (diff) | |
download | thoughts-8e15dbd73035c2a2198a2828a20ddcebe0739823.tar.gz thoughts-8e15dbd73035c2a2198a2828a20ddcebe0739823.tar.bz2 thoughts-8e15dbd73035c2a2198a2828a20ddcebe0739823.zip |
Implemented streams
Currently there are no links to the pages for editing stream updates, and the admin panel for managing streams could probably have a better look & feel, but here's some basic working functionality. refs #8
Diffstat (limited to 'app/models')
-rw-r--r-- | app/models/stream.rb | 13 | ||||
-rw-r--r-- | app/models/update.rb | 12 |
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 @@ | |||
1 | class 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 | ||
13 | end | ||
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 @@ | |||
1 | class 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 | ||
12 | end | ||