mirror of
https://github.com/Growstuff/growstuff.git
synced 2026-10-20 22:14:21 -04:00
Delete gardens
This commit is contained in:
1 parent
b74b195d03
commit
349aecbb69
5 files changed
+24
-9
No files matched your search
@@ -78,7 +78,7 @@ class GardensController < ApplicationController
|
||||
@garden.destroy
|
||||
|
||||
respond_to do |format|
|
||||
format.html { redirect_to gardens_url }
|
||||
format.html { redirect_to @garden.owner, notice: 'Garden was successfully deleted.' }
|
||||
format.json { head :no_content }
|
||||
end
|
||||
end
|
||||
|
||||
@@ -4,7 +4,7 @@ class Garden < ActiveRecord::Base
|
||||
|
||||
attr_accessible :name, :slug, :owner_id, :description
|
||||
belongs_to :owner, :class_name => 'Member', :foreign_key => 'owner_id'
|
||||
has_many :plantings, :order => 'created_at DESC'
|
||||
has_many :plantings, :order => 'created_at DESC', :dependent => :destroy
|
||||
has_many :crops, :through => :plantings
|
||||
|
||||
default_scope order("lower(name) asc")
|
||||
|
||||
@@ -13,19 +13,24 @@
|
||||
- else
|
||||
= link_to "#{othergarden}", garden_path(othergarden)
|
||||
|
||||
- if can? :edit, @garden
|
||||
= link_to 'Edit', edit_garden_path(@garden), :class => 'btn'
|
||||
= link_to 'New', new_garden_path, :class => 'btn'
|
||||
- if can? :create, @garden
|
||||
= link_to 'New Garden', new_garden_path, :class => 'btn btn-mini'
|
||||
|
||||
.span9
|
||||
%div
|
||||
:markdown
|
||||
#{@garden.description}
|
||||
|
||||
- if can? :edit, @garden
|
||||
%p= link_to "Plant something", new_planting_path(:garden_id => @garden.id), :class => 'btn btn-large btn-primary'
|
||||
= link_to 'Edit Garden', edit_garden_path(@garden), :class => 'btn btn-mini'
|
||||
- if can? :destroy, @garden
|
||||
= link_to 'Delete Garden', @garden, method: :delete, |
|
||||
data: { confirm: 'All plantings associated with this garden will also be deleted. Are you sure?' }, :class => 'btn btn-mini'
|
||||
|
||||
%h3
|
||||
What's planted here?
|
||||
- if can? :edit, @garden
|
||||
= link_to "Plant something", new_planting_path(:garden_id => @garden.id), :class => 'btn btn-primary'
|
||||
|
||||
%h3 What's planted here?
|
||||
- @garden.plantings.each do |p|
|
||||
= render :partial => "plantings/thumbnail", :locals => { :planting => p }
|
||||
|
||||
@@ -131,7 +131,7 @@ describe GardensController do
|
||||
it "redirects to the gardens list" do
|
||||
garden = Garden.create! valid_attributes
|
||||
delete :destroy, {:id => garden.to_param}
|
||||
response.should redirect_to(gardens_url)
|
||||
response.should redirect_to(garden.owner)
|
||||
end
|
||||
end
|
||||
|
||||
|
||||
@@ -71,4 +71,14 @@ describe Garden do
|
||||
end
|
||||
end
|
||||
|
||||
it "destroys plantings when deleted" do
|
||||
@garden = FactoryGirl.create(:garden, :owner => @owner)
|
||||
@planting1 = FactoryGirl.create(:planting, :garden => @garden)
|
||||
@planting2 = FactoryGirl.create(:planting, :garden => @garden)
|
||||
@garden.plantings.length.should == 2
|
||||
all = Planting.count
|
||||
@garden.destroy
|
||||
Planting.count.should == all - 2
|
||||
end
|
||||
|
||||
end
|
||||
Reference in new issue
Block a user