ruby on rails - Calling Model name on it's model -


i have import feature excel. , put on model which:

def self.import(file, employee_name)   spreadsheet = open_spreadsheet(file)   header = spreadsheet.row(1)   (2..spreadsheet.last_row).each |i|     row = hash[[header, spreadsheet.row(i)].transpose]     category = category.where(:name => row["category"]).last     if category.blank?       category = category.create(:name => row["category"], :is_active => 1)     end     unit = unitofmeasure.where(:name => row["unit"]).last     if unit.blank?       unit = unitofmeasure.create(:name => row["unit"], :is_active => 1)     end      chart_of_account_id=0     stock_output_account=0      if row["can sold"]==1       income_account=1     else       income_account=0     end      if row["can purchased"]==1       expense_account=1     else       expense_account=0     end      product = product.create(:plu => row["plu"], :plu_night_disc => row["plu night disc."], :name => row["item desc."], :min_stock => ["min. stock"], :product_type => row["product type"], :notes => ["notes"], :sales_price => ["sales price"], :night_disc_price => ["night disc. price"], :bottom_price => ["bottom price"], :category_id => category.id, :unit_of_measure_id => unit.id, :chart_of_account_id => chart_of_account_id, :stock_output_account => stock_output_account, :income_account => income_account, :expense_account => expense_account, :can_be_sold => row["can sold"], :can_be_purchased => row["can purchased"], :employee_name => employee_name, :is_active => 1)    end end 

but when import, doesn't return error, creation of product skipped (look long code), when try change product example model country inserting database finely. confuse of behaviour. please help. thanks

this behavior you're getting means have invalid product record, , insertion failing silently. try using create! method instead:

product = product.create!(...) 

this method raise error if model invalid, explanations on why. can use information debug code.

hope helps.


Comments

Popular posts from this blog

ruby - Trying to change last to "x"s to 23 -

jquery - Clone last and append item to closest class -

c - Unrecognised emulation mode: elf_i386 on MinGW32 -