I am trying to parse an email sent to my app server. It should read the email to find the user by email then add the photo to the user's photo models Here is what I have so far. What am I doing wrong?
class Mailman < ActionMailer::Base
def receive(email)
logger.info("Got an email about: #{email.subject}")
if (@user = User.find_by_email(email.from))
if email.has_attachments?
for attachment in email.attachments
#[email protected](:data_file_name => attachment.original_filename,
# :data_content_type => attachment.content_type, :data_file_size => attachment.size,
# :data_updated_at => Time.now.to_datetime)
# @user.photos << attachment
# I don't think this is the right way to do this...
end
end
else
logger.info("No user found with email: #{email.from}")
end
end
end
class User < ActiveRecord::Base
acts_as_authentic
has_attached_file :avatar
has_many :photos, :dependent => :destroy
accepts_nested_attributes_for :photos
# What does this do?
end
class Photo < ActiveRecord::Base
belongs_to :user
has_attached_file :data
end
class AddAttachmentsDataToPhoto < ActiveRecord::Migration
def self.up
add_column :photos, :data_file_name, :string
add_column :photos, :data_content_type, :string
add_column :photos, :data_file_size, :integer
add_column :photos, :data_updated_at, :datetime
end
def self.down
remove_column :photos, :data_file_name
remove_column :photos, :data_content_type
remove_column :photos, :data_file_size
remove_column :photos, :data_updated_at
end
end