リビジョン f0da3938
| app/controllers/glossary_terms_controller.rb | ||
|---|---|---|
|
class GlossaryTermsController < ApplicationController
|
||
|
|
||
|
before_action :find_term_from_id, only: [:show, :edit, :update, :destroy]
|
||
|
before_action :find_project_from_id, only: [:index, :create]
|
||
|
before_action :find_project_from_id
|
||
|
|
||
|
def index
|
||
|
@glossary_terms = GlossaryTerm.where(project_id: @project.id)
|
||
| ... | ... | |
|
term = GlossaryTerm.new(glossary_term_params)
|
||
|
term.project = @project
|
||
|
if term.save
|
||
|
redirect_to term, notice: l(:notice_successful_create)
|
||
|
redirect_to [@project, term], notice: l(:notice_successful_create)
|
||
|
end
|
||
|
end
|
||
|
|
||
| ... | ... | |
|
def update
|
||
|
@term.attributes = glossary_term_params
|
||
|
if @term.save
|
||
|
redirect_to @term, notice: l(:notice_successful_update)
|
||
|
redirect_to [@project, @term], notice: l(:notice_successful_update)
|
||
|
end
|
||
|
rescue ActiveRecord::StaleObjectError
|
||
|
flash.now[:error] = l(:notice_locking_conflict)
|
||
|
end
|
||
|
|
||
|
def destroy
|
||
|
project = @term.project
|
||
|
@term.destroy
|
||
|
redirect_to project.nil? ? home_path : project_glossary_terms_path(project)
|
||
|
redirect_to project_glossary_terms_path
|
||
|
end
|
||
|
|
||
|
# Find the term whose id is the :id parameter
|
||
| app/views/glossary_terms/edit.html.erb | ||
|---|---|---|
|
<h2><%=l :label_glossary_term %> #<%= @term.id %></h2>
|
||
|
|
||
|
<%= labelled_form_for :glossary_term, @term, url: glossary_term_path do |f| %>
|
||
|
<%= labelled_form_for :glossary_term, @term, url: project_glossary_term_path do |f| %>
|
||
|
<%= render partial: 'glossary_terms/form', locals: {form: f} %>
|
||
|
<%= f.submit l(:button_edit) %>
|
||
|
<% end %>
|
||
| app/views/glossary_terms/index.html.erb | ||
|---|---|---|
|
<%= term.id %>
|
||
|
</td>
|
||
|
<td class="name">
|
||
|
<%= link_to term.name, term %>
|
||
|
<%= link_to term.name, [@project, term] %>
|
||
|
</td>
|
||
|
<td class="roles">
|
||
|
<%= term.category.try!(:name) %>
|
||
| app/views/glossary_terms/show.html.erb | ||
|---|---|---|
|
<div class="contextual">
|
||
|
<%= link_to l(:button_edit), edit_glossary_term_path, class: 'icon icon-edit' %>
|
||
|
<%= link_to l(:button_delete), glossary_term_path, method: :delete,
|
||
|
<%= link_to l(:button_edit), edit_project_glossary_term_path, class: 'icon icon-edit' %>
|
||
|
<%= link_to l(:button_delete), project_glossary_term_path, method: :delete,
|
||
|
data: {confirm: l(:text_are_you_sure)}, class: 'icon icon-del' %>
|
||
|
</div>
|
||
|
|
||
| config/routes.rb | ||
|---|---|---|
|
# See: http://guides.rubyonrails.org/routing.html
|
||
|
|
||
|
Rails.application.routes.draw do
|
||
|
resources :projects, shallow: true do
|
||
|
resources :projects do
|
||
|
resources :glossary_terms
|
||
|
end
|
||
|
resources :glossary_categories
|
||
[phase-6]changed routing of all glossary_term to under project