Rhomobile - load_offline_data问题

时间:2012-05-22 11:16:33

标签: rhomobile

用于从.txt文件加载种子数据时,我遇到load_offline_data问题

我的代码如下所示:

> def initialize
>     Rho::RHO.load_all_sources()
>     products = Product.find(:all)
>     Rho::RhoUtils.load_offline_data(['products'], 'db')   end

在db / fixtures / products.txt

source_name|attrib|object|value
Product|name|1|product 1| Product|order_id|1|1|

Product|name|2|product 2|
Product|order_id|2|2|

我收到这样的错误:

应用程序初始化失败:#source_id'代表nil:NilClass&gt ;;跟踪:lib / rho / rhoutils.rb:71:inblock(3级)in load_offline_data'

任何人都可以帮助我......

提前致谢!

1 个答案:

答案 0 :(得分:0)

斯里,我不得不手动要求'rho / rhoutils'。

为了避免source_id错误,我不得不调用Rhom :: Rhom.database_full_reset(true,true)。因为这会在每次初始化应用程序时重置数据库,所以我包括一个警卫检查我的树表已经填充。

require 'rho/rhoapplication'
require 'rho/rhoutils'

class AppApplication < Rho::RhoApplication
  def initialize
    # Tab items are loaded left->right, @tabs[0] is leftmost tab in the tab-bar
    # Super must be called *after* settings @tabs!
    @tabs = nil
    #To remove default toolbar uncomment next line:
    #@@toolbar = nil
    super

    if Tree.find_all.empty?
      Rhom::Rhom.database_full_reset(true, true)
      Rho::RhoUtils.load_offline_data(['object_values'], '')
    else
      puts "*"*80
      puts "ALL GOOD"*5
      puts "*"*80
    end

    # Uncomment to set sync notification callback to /app/Settings/sync_notify.
    # SyncEngine::set_objectnotify_url("/app/Settings/sync_notify")
    # SyncEngine.set_notification(-1, "/app/Settings/sync_notify", '')
  end
end