title: Rails Paperclip Carrierwave.. Errors
body: <p>Hey I'm doing something strange. Using both Paperclip &amp; Carrierwave to determine which i like better because I am new to rails but here is the issue.</p>
  
  <p>When I create a post using Paperclip, the image gets routed to the directory but does not display/render in any view.</p>
  
  <p>When I create a post using Carrierwave, the image never gets routed or renders and I get an error withing the postscontroller saying.</p>
  
  <pre><code> (undefined method `image_will_change!' for #Post:0x007fd039c02888)
   app/controllers/posts_controller.rb:27:in `create'
  </code></pre>
  
  <p>I also get an error across the app when trying to edit any of the post that error is.</p>
  
  <pre><code>(undefined method 'image_changed?' for #Post:0x007fd03fc76fe8)
  app/controllers/posts_controller.rb:44:in `block in update'
  app/controllers/posts_controller.rb:43:in `update'
  </code></pre>
  
  <hr>
  
  <p>Heres my code: </p>
  
  <h2>(post.rb)</h2>
  
  <pre><code>class Post &lt; ActiveRecord::Base
  attr_accessor :image  
  has_attached_file :content, :styles =&gt; { :medium =&gt; "300x300&gt;", :thumb =&gt; "100x100&gt;" }
  mount_uploader :image, ImageUploader
  end
  </code></pre>
  
  <h2>(postscontroller.rb)</h2>
  
  <pre><code>class PostsController &lt; ApplicationController
  before_action :set_post, only: [:show, :edit, :update, :destroy, :destroy_all]
  
  
  def index
  @posts = Post.all
  end
  
  
  def show
  end
  
  
  def new
  @post = Post.new
  end
  
  
  def edit
  end
  
  def create
  @post = Post.new(post_params)
  
  respond_to do |format|
    if @post.save
      format.html { redirect_to @post, notice: 'Post was successfully created.' }
      format.json { render :show, status: :created, location: @post }
    else
      format.html { render :new }
      format.json { render json: @post.errors, status: :unprocessable_entity }
    end
  end
  end
  
  def update
  respond_to do |format|
    if @post.update(post_params)
      format.html { redirect_to @post, notice: 'Post was successfully updated.' }
      format.json { render :show, status: :ok, location: @post }
    else
      format.html { render :edit }
      format.json { render json: @post.errors, status: :unprocessable_entity }
    end
  end
  end
  
  
  def destroy
  @post.destroy
  respond_to do |format|
    format.html { redirect_to posts_url, notice: 'Post was successfully destroyed.' }
    format.json { head :no_content, :no_image }
  end
  end
  
  
  
  def destroy_all
  @post.destroy_all
  respond_to do |format|
    format.html { redirect_to posts, notice: 'All Posts have bee successfully destroyed.'}
    format.json { head :no_content, :no_image}
  end
  end
  
  def demo
  @post = Post.all
  end
  
  private
    # Use callbacks to share common setup or constraints between actions.
    def set_post
    @post = Post.find(params[:id])
    end
  
  # Never trust parameters from the scary internet, only allow the white list through.
    def post_params
    params.require(:post).permit(:title, :description, :content, :image)
  end
  end
  </code></pre>
  
  <h2>(imageuploader.rb)</h2>
  
  <pre><code>  class ImageUploader &lt; CarrierWave::Uploader::Base
    storage :file
    def store_dir
    "images"
    end
  </code></pre>
  
  <h2>(add_content_to_posts.rb)</h2>
  
  <pre><code>  class AddContentToPosts &lt; ActiveRecord::Migration
    def self.up
    add_attachment :posts, :content
    end
  
    def self.down
    remove_attachment :posts, :content
    end
    end
  </code></pre>
  
  <h2>(add_image_to_posts.rb)</h2>
  
  <pre><code>  class AddImageToPosts &lt; ActiveRecord::Migration
    def change
    add_column :posts, :images, :string
    end
    end
  </code></pre>
  
  <h2>(Schema.rb)</h2>
  
  <pre><code>  create_table "posts", force: true do |t|
      t.string   "title"
      t.string   "description"
      t.datetime "created_at"
      t.datetime "updated_at"
      t.string   "content_file_name"
      t.string   "content_content_type"
      t.integer  "content_file_size"
      t.datetime "content_updated_at"
      t.string   "images"
     end
  </code></pre>