diff --git a/app/controllers/channels_controller.rb b/app/controllers/channels_controller.rb index 7ef52ba..2734222 100644 --- a/app/controllers/channels_controller.rb +++ b/app/controllers/channels_controller.rb @@ -38,7 +38,7 @@ class ChannelsController < ApplicationController # clear all data from a channel def clear channel = current_user.channels.find(params[:id]) - channel.feeds.delete_all + channel.delete_feeds channel.update_attribute(:last_entry_id, nil) redirect_to channels_path diff --git a/app/models/channel.rb b/app/models/channel.rb index b941021..28be06a 100644 --- a/app/models/channel.rb +++ b/app/models/channel.rb @@ -10,6 +10,7 @@ class Channel < ActiveRecord::Base after_create :set_initial_default_name before_validation :set_default_name + after_destroy :delete_feeds validates :name, :presence => true, :on => :update @@ -22,7 +23,11 @@ class Channel < ActiveRecord::Base end def field_label(field_number) - self["field#{field_number}"] + self.attributes["field#{field_number}"] + end + + def delete_feeds + Feed.delete_all(["channel_id = ?", self.id]) end private