2016-03-18 21 views
0

Tam olarak nerede yanlış yaptığımı tam olarak bilmiyorum, Lob geminin Ruby ile nasıl kurulacağıyla ilgili this post izliyorum. AncakRaylar undefined method/yöntemleri bir gemiden alamıyor

class UsersController < ApplicationController 

    require 'lob' 

    def index 
     .... 
    end 

    def create 
     .... 
    end 

    def show 
     @user = User.find(params[:id]) 
     @result = User.return_representative(@user.address) 

     .... 

     Lob.api_key = 'test_my_api_key' 
     @lob = Lob.load 

     @lob.letters.create(
      .... 
     ) 
    end 

    private 

    .... 
end 

şöyle

Şu anda benim denetleyicisi bir hata mesaj tanımsız yöntem `harfleri alıyorum vardır. Aramayı yanlış mı yapıyorum yoksa tamamen yanlış bir şey mi yapıyorum? Yukarıdaki bağlantıdan itibaren bu, gemiyi kurmanın bir yolu gibi görünüyor.

Düzenleme: @lob.methods Koşu Ben şu olsun

[: Seçenekler arasında: Seçenekler =,: alanlar,: adresleri,: bank_accounts,: çek, : ülkeler,: iş,: objeler,: ambalajlar ,: kartpostallar,: rotalar, : hizmetler,: ayarlar,: durumlar,: base_url,: struct_url, : format_address_params,: blank ?,: present ?,: presence,: psych_to_yaml, : to_yaml,: to_yaml_properties,: acts_like ?,: duplicable ?,: deep_dup, : Kendisi,: try:: try !,: içinde ?,: presence_in,: to_param,: to_query, : instance_values,: instance_variable_names, : to_json_with_active_support_encoder, : to_json_without_active_support_encoder: to_json: as_json, : with_options: html_safe ?,: ': require_or_load: require_dependency, : load_dependency: Unloadable: nil ?,: ===: = ~ ,:! ~,: eql ?, hash, : < =>,: class,: singleton_class,: clone,: dup,: taint,: tainted ?, : untaint,: güvenilmez,: güvenilmeyen ?,: tr ,: dondurma: dondurulmuş ?,: to_s, : kontrol: yöntemleri: singleton_methods: protected_methods, : private_methods: public_methods: instance_variables, : instance_variable_get: instance_variable_set, : instance_variable_defined ?,: remove_instance_variable: örnek_of ?, : kind_of ?,: is_a ?,: dokunun,: Göndermek: public_send: respond_to ?,: uzatmak, : ekran,: yöntemini: public_method: singleton_method, : define_singleton_method: object_id,: to_enum: enum_for: mücevher, : class_eval: silence_warnings: enable_warnings ,: with_warnings, : silence_stderr,: silence_stream,: suppress,: yakalama,: sessizlik, : sessizce: byebug,: debugger,: endişe,: suppress_warnings,: ==, : eşit ?,:!,:! =,: instance_eval: instance_exec: , gönderin: id]

olduğu gibi eğer harf görünüyor mevcut bir yöntem değil. Bu, belgelerin yanlış olduğu anlamına mı geliyor?

+0

sorunuzu @ lob.methods kullanıcısından ekledi. –

+0

@SachinSingh '@ lob.methods' sonucunu ekledim.Mektuplar mevcut bir yöntem değil gibi görünüyor. Bu, belgelerin yanlış olduğu anlamına mı geliyor? – user3277633

+0

Adres ve mektup modeliniz var mı? –

cevap

1

bu deneyin:

Eğer mücevher farklı versiyonunu kullanmış Belki ben bu taş yükleme denedim ve çalıştı ben mi.

[email protected]:~$ gem list lob 

*** LOCAL GEMS *** 

globalid (0.3.6, 0.3.5) 
lob (2.4.0) 
[email protected]:~$ irb 
2.2.2 :001 > require 'lob' 
=> true 
2.2.2 :002 > Lob.api_key = "test_00001" 
=> "test_00001" 
2.2.2 :003 > @lob = Lob.load 
=> #<Lob::V1::Resource:0x000000034e0a40 @options={:api_host=>"api.lob.com", :protocol=>"https", :api_version=>nil, :api_key=>"test_00001"}> 
2.2.2 :004 > @lob.letters 
=> #<Lob::V1::Letter:0x0000000342de40 @resource=#<Lob::V1::Resource:0x000000034e0a40 @options={:api_host=>"api.lob.com", :protocol=>"https", :api_version=>nil, :api_key=>"test_00001"}>> 
2.2.2 :005 > 
+0

Gem'in en son sürümünü belirledim ve benim için çalıştı. Teşekkürler! – user3277633

0

ayıklama yöntemi aslında var ise yük görmek için sonra:

logger.debug(@lob.methods.sort)