Wpis z mikrobloga

#programowanie #programista15k #ruby #rubyonrails #rubygems

Wczoraj stwierdziłem, że będę zajebisty - napiszę swojego pierwszego gem-a i wrzucę na rubygems, gem działa, jak go w konsoli testowałem, ale po dołączeniu do aplikacji railsowej, za nic go nie mogę wywołać :P

Więc chociaż się nim tu pochwalę...
Nic specjalnego - interakcja z API z smsapi.pl, ale jest
https://github.com/pj-it/sms_api
  • 10
@kz__ tak tez robilem, dalej w metodzie jeszcze include. Wyrzucalo, ze zla ilosc argumentow. Jak dawalem 2 to krzyczalo ze dalem jeden, jak dalem jeden to krzyczal, ze dalem 0 xD
Dzis wieczorem do tego bede siadal ponownie.
Patrzyłem dużo tam kodu nie ma, dobrze ze robisz tego gema - ciekawych rzeczy się nauczysz. daj znać jak nie poradzisz sobie, coś wymyślimy razem
@pokukma:
A co nie działa?

U mnie wygląda, że coś tam robi:

staszek@byzantion sms_api[master] rake install
pjit-sms_api 0.1.1 built to pkg/pjit-sms_api-0.1.1.gem.
pjit-sms_api (0.1.1) installed.
staszek@byzantion sms_api[master] irb
2.3.1 :001 > require 'pjit-sms_api'
LoadError: cannot load such file -- pjit-sms_api
from /home/staszek/.rvm/rubies/ruby-2.3.1/lib/ruby/2.3.0/rubygems/core_ext/kernel_require.rb:55:in
require'
from /home/staszek/.rvm/rubies/ruby-2.3.1/lib/ruby/2.3.0/rubygems/coreext/kernelrequire.rb:55:in require'
from (irb):1
from /home/staszek/.rvm/rubies/ruby-2.3.1/bin/irb:11:in
'
2.3.1 :002 > require 'sms
api'
=> true
2.3.1 :003 >
2.3.1 :004 >
2.3.1 :005 >
2.3.1 :006 >
@Ragnarokk: Z konsoli u mnie też to wygląda ok:

$ rails c
Running via Spring preloader in process 1587
Loading development environment (Rails 4.2.6)
2.3.0 :001 > require 'sms_api'
=> true
2.3.0 :002 > SmsApi.send('a','b')
=> #[{"number"=>"a", "submitted_number"=>"a", "message"=>"Invalid phone number"}], "error"=>13, "message"=>"No correct phone numbers"}, @response=#, @headers={"date"=>["Tue, 24 Jan 2017 15:12:46 GMT"], "server"=>["Apache"], "cache-control"=>["no-cache", "max-age=0"], "x-correlation-id"=>["762b9445-7cb9-4c08-b37c-c9480013d43d"], "x-request-id"=>["90565f02-6c88-4618-942c-25c4364e52b3"], "expires"=>["Tue, 24 Jan 2017 15:12:46 GMT"], "connection"=>["close"], "transfer-encoding"=>["chunked"], "content-type"=>["application/json"]}>
2.3.0 :003
@Ragnarokk: O, dzięki! pomogło, wieczorem będę doprawiał obsługę kodów błędów z SmsApi i walidacje msisnd to wypchnę te zmiany :)

ps. zmieniłem nazwę metody send i w aplikacji railsowej i w gem-ie.