2012-10-17 52 views
2

我使用的鐵軌2.3.4和我面臨‘無方法錯誤’NoMethodError(未定義的方法`service_options'的零:NilClass)

有可能性找不到方法,但我的問題是 - 有可能由於空表發生錯誤?或在另一個控制器或助手錯誤?

錯誤跟蹤:

處理QuoteRequestsController#創建(爲127.0.0.1在二零一二年十月十七日16時07分34秒)[POST] 參數:{ 「控制器」=> 「quote_requests」,「quote_request 「=」{「packing_required」=>「」,「move_steps_number」=>「」,「phone_day」=>「」,「pickup _region_id」=>「」,「email」=>「」,「move_to_street」=> 「,」move_from_suburb「=>」「,」title「=>」「,」quick_estimate「=>」true「,」room_counts「=>」9「=>」0「,」8「=>」0「 ,「5」=>「0」,「2」=>「0」,「3」=>「0」,「6」=>「0」,「7」=>「0」 >「0」,「4」=>「」,「11」=>「0」},「arri_parking_notes」=>「」,「first_name」=>「」,「arrive_date_flexible」=>「false」,「insurance_value 「=>」「,」arrive_steps_number「=>」「,」move_parking_notes「=>」「,」last_name「=>」「,」move_region_id「=>」「,」move_date_flexible「=>」false「,」move_type_id「 =>「26」,「move_to _city「=>」「,」arrive_date「=>」「,」move_from_street「=>」「,」move_date「=>」「,」move_to_suburb「=>」「,」move_from_city「=>」「,」phone_mobile「 => 「」}, 「authenticity_token」=> 「U42qF1c0FJXvnC1SCNNYWzxKN3Pem7dC6L01LbTQD7E =」, 「提交」=> 「提交」, 「動作」=> 「創建」}

NoMethodError(未定義的方法service_options' for nil:NilClass): vendor/extensions/smartmove/app/controllers/quote_requests_controller.rb:136:in load_regions'

供應商/radiant/vendor/plugins/haml/rails/./lib/sass/plugin/rails.rb:19:in`process'

/home/bacancy/.rvm/rubies/ruby-1.8.7-p370 /lib/ruby/1.8/webrick/httpserver.rb:104:in`service'

/home/bacanc y/.rvm/rubies/ruby​​-1.8.7-p370/lib/ruby​​/1.8/webrick/httpserver.rb:65:in'run'

/home/bacancy/.rvm/rubies/ruby-1.8 .7-p370/lib/ruby​​/1.8/webrick/server.rb:173:in`start_thread'

/home/bacancy/.rvm/rubies/ruby-1.8.7-p370/lib/ruby/1.8 /webrick/server.rb:162:in'startup'

/home/bacancy/.rvm/rubies/ruby-1.8.7-p370/lib/ruby/1.8/webrick/server.rb:162:in `start_thread '

/home/bacancy/.rvm/rubies/ruby-1.8.7-p370/lib/ruby/1.8/webrick/server.rb:95:in'開始'

/home/bacancy/.rvm/rubies/ruby-1.8.7-p370/lib/ruby/1.8/webrick/server.rb:92:in`每個」

/home/bacancy/.rvm/ rubies/ruby​​-1.8.7-p370/lib/ruby​​/1.8/webrick/server.rb:92:in'start'

/home/bacancy/.rvm/rubies/ruby-1.8.7-p370/ lib/ruby​​/1.8/webrick/server.rb:23:在'start'中

/home/bacancy/.rvm/rubies/ruby-1.8.7-p370/lib/ruby/1.8/webrick/server。 rb:82:in'start'

in「vendor/extensions/smartmove/app/controllers/quote_requests_controller.rb」line no:136 is

@regions = ServiceDescription.find_by_name( '區域')service_options。

在我的數據庫表

是有service_descriptions和service_options。有沒有關係到MySQL或控制器? 請指導我,我非常困惑。這是現有的應用程序,我在本地以及在服務器上配置

預先感謝您

感謝你 Nirav

+0

ServiceDescription.find_by_name('region')返回nil。所以在nil上調用service_options會引發這個錯誤。 –

+0

嗨soundar我檢查ServiceDescription表有沒有數據,但如果我存儲或添加數據,它將運行?但service_options是一個方法或數據庫字段? thanx –

回答

1

你得到錯誤,因爲ServiceDescription.find_by_name('region')返回nil(這只是意味着你有沒有在service_descriptions表名'region'數據),然後你調用它service_options(即nil

最好的辦法避免這種情況,以檢查是否值i沒有或沒有應用任何方法之前。

@regions = ServiceDescription.find_by_name('region') 
@service_options = @regions ? @regions.service_options : nil 
+0

hi salil thanx快速回復, –

+1

但在這裏,我們不能更改代碼,因爲代碼是寫入,但與我的配置問題。是否有可能「ServiceDescription.find_by_name('region')。service_options」查詢mysql?我可以檢查另一個控制器或助手嗎? thanx salil –

+0

嗨salil我檢查ServiceDescription表有沒有數據,但如果我存儲或添加數據,它會運行?但service_options是一個方法或數據庫字段? thanx –

相關問題