Controller ClientDocument。
def upload_document
ClientDocument.upload_client_document(params)
end
Model ClientDocument。
班级方法..
def self.upload_client_document(params)
self.new :uploaded_data => params[:Filedata],:client_id => params[:client_id]
rename_document_name(params) # Call instance method
end
实例方法..
def rename_document_name(params)
self.filename = "#{self.client.client_no}-#{self.filename}"
end
是否可以从类方法中调用实例方法?
在存储到数据库之前,我想重命名文件名。
解决这个问题的正确方法是什么?
答案 0 :(得分:4)
def self.upload_client_document(params)
instance = self.new :uploaded_data => params[:Filedata],:client_id => params[:client_id]
instance.rename_document_name(params) # Call instance method
instance
end