Added ability to comment on license records; updated item list view to link to the item display pages
This commit is contained in:
parent
36f7fb82a6
commit
db6bfe8e7a
20
db/migrations/0004_add_license_comments_table.rb
Normal file
20
db/migrations/0004_add_license_comments_table.rb
Normal file
@ -0,0 +1,20 @@
|
|||||||
|
Sequel.migration do
|
||||||
|
|
||||||
|
up do
|
||||||
|
create_table(:license_comments) do
|
||||||
|
primary_key :id
|
||||||
|
String :body, null: false
|
||||||
|
DateTime :created_at
|
||||||
|
DateTime :updated_at
|
||||||
|
end
|
||||||
|
|
||||||
|
alter_table(:license_comments) do
|
||||||
|
add_foreign_key :license_id, :items
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
down do
|
||||||
|
drop_table(:license_comments)
|
||||||
|
end
|
||||||
|
|
||||||
|
end
|
@ -1,5 +1,5 @@
|
|||||||
class License < Sequel::Model
|
class License < Sequel::Model
|
||||||
|
|
||||||
|
one_to_many :license_comments
|
||||||
|
|
||||||
end
|
end
|
||||||
|
5
lib/models/license_comment.rb
Normal file
5
lib/models/license_comment.rb
Normal file
@ -0,0 +1,5 @@
|
|||||||
|
class LicenseComment < Sequel::Model
|
||||||
|
|
||||||
|
many_to_one :licenses
|
||||||
|
|
||||||
|
end
|
@ -92,3 +92,12 @@ get '/license/:license_id' do
|
|||||||
:license => license
|
:license => license
|
||||||
}
|
}
|
||||||
end
|
end
|
||||||
|
|
||||||
|
post '/license/:license_id/comment' do
|
||||||
|
license = License.first(id: params[:license_id])
|
||||||
|
|
||||||
|
comment = LicenseComment.create(body: params[:comment_body])
|
||||||
|
license.add_license_comment(comment)
|
||||||
|
|
||||||
|
redirect "/license/#{license.id}"
|
||||||
|
end
|
||||||
|
1
raven.rb
1
raven.rb
@ -24,6 +24,7 @@ DB = Sequel.connect(adapter: conf.get('database.adapter'), database: conf.get('d
|
|||||||
require_relative 'lib/models/item.rb'
|
require_relative 'lib/models/item.rb'
|
||||||
require_relative 'lib/models/item_comment.rb'
|
require_relative 'lib/models/item_comment.rb'
|
||||||
require_relative 'lib/models/license.rb'
|
require_relative 'lib/models/license.rb'
|
||||||
|
require_relative 'lib/models/license_comment.rb'
|
||||||
|
|
||||||
# Load helper functions
|
# Load helper functions
|
||||||
require_relative 'lib/helpers.rb'
|
require_relative 'lib/helpers.rb'
|
||||||
|
@ -11,7 +11,7 @@
|
|||||||
<% if items.length > 0 %>
|
<% if items.length > 0 %>
|
||||||
<ul>
|
<ul>
|
||||||
<% items.each do |item| %>
|
<% items.each do |item| %>
|
||||||
<li><%= item.name %></li>
|
<li><a href="/item/<%= item.id %>"><%= item.name %></a></li>
|
||||||
<% end %>
|
<% end %>
|
||||||
</ul>
|
</ul>
|
||||||
<% else %>
|
<% else %>
|
||||||
|
@ -34,3 +34,28 @@
|
|||||||
</table>
|
</table>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
<div class="row">
|
||||||
|
<div class="twelve columns">
|
||||||
|
<% if license.license_comments.length > 0 %>
|
||||||
|
<ul class="u-full-width">
|
||||||
|
<% license.license_comments.each do |comment| %>
|
||||||
|
<li><%= comment.body %></li>
|
||||||
|
<% end %>
|
||||||
|
</ul>
|
||||||
|
<% else %>
|
||||||
|
<p>There are no comments to display at this time.</p>
|
||||||
|
<% end %>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="row">
|
||||||
|
<div class="twelve columns">
|
||||||
|
<form action="/license/<%= license.id %>/comment" method="POST" class="u-full-width">
|
||||||
|
<label for="comment_body">Add a comment:</label>
|
||||||
|
<textarea name="comment_body" id="comment_body" class="u-full-width" cols="30" rows="10"></textarea>
|
||||||
|
|
||||||
|
<input class="button button-primary" type="submit" value="Submit">
|
||||||
|
</form>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
Loading…
Reference in New Issue
Block a user