Archive

Posts Tagged ‘sinatra’

rubyのTwitter::Base.newで得られるメソッド一覧

11月 11th, 2009

使い方は気合いで

RUBY:
  1. require 'twitter' # ver 0.7.0
  2.  
  3. ==
  4. ===
  5. =~
  6. __id__
  7. __send__
  8. b64encode
  9. blank?
  10. block
  11. class
  12. client
  13. clone
  14. dclone
  15. decode64
  16. decode_b
  17. delete
  18. direct_message_create
  19. direct_message_destroy
  20. direct_messages
  21. direct_messages_sent
  22. disable_notifications
  23. display
  24. dup
  25. enable_notifications
  26. encode64
  27. enum_for
  28. eql?
  29. equal?
  30. extend
  31. favorite_create
  32. favorite_destroy
  33. favorites
  34. follower_ids
  35. followers
  36. freeze
  37. friend_ids
  38. friends
  39. friends_timeline
  40. friendship_create
  41. friendship_destroy
  42. friendship_exists?
  43. frozen?
  44. get
  45. hash
  46. help
  47. id
  48. inspect
  49. instance_eval
  50. instance_exec
  51. instance_of?
  52. instance_variable_defined?
  53. instance_variable_get
  54. instance_variable_set
  55. instance_variables
  56. is_a?
  57. is_list_member?
  58. kind_of?
  59. list
  60. list_add_member
  61. list_create
  62. list_delete
  63. list_members
  64. list_remove_member
  65. list_subscribe
  66. list_subscribers
  67. list_timeline
  68. list_unsubscribe
  69. list_update
  70. lists
  71. memberships
  72. method
  73. methods
  74. nil?
  75. object_id
  76. post
  77. private_methods
  78. protected_methods
  79. public_methods
  80. put
  81. rate_limit_status
  82. replies
  83. respond_to?
  84. send
  85. singleton_methods
  86. status
  87. status_destroy
  88. taguri
  89. taguri=
  90. taint
  91. tainted?
  92. tap
  93. to_a
  94. to_enum
  95. to_json
  96. to_s
  97. to_yaml
  98. to_yaml_properties
  99. to_yaml_style
  100. type
  101. unblock
  102. untaint
  103. update
  104. update_delivery_device
  105. update_profile
  106. update_profile_colors
  107. user
  108. user_timeline
  109. verify_credentials

以上

,

sinatraでsessionを有効にする

10月 15th, 2009

これまたsinatraというよりもrackの、なんだけども

参考:Sinatra と OAuth を使って Twitter のタイムラインを取得してみた - まちゅダイアリー(2009-08-18)

こちらにあった例を試すと

RUBY:
  1. use :sessions, true # 0.9.4 & Mongrelで動かず
  2. enable :sessions # 試してない; 動くかも
  3. # でもこんな感じでやらないと改ざんされて涙目になるかも
  4. use Rack::Session::Cookie, :secret => Digest::SHA1.hexdigest(rand.to_s)

こんな感じでした
デフォルトで使えないというのにちょっとびっくり

,

[sequel][jQuery][sinatra]で今日やったこと

9月 28th, 2009

・xml出力

RUBY:
  1. get '/hoge.xml' do
  2.   content_type 'text/xml', :charset => 'utf-8'
  3.   '<hoge><body>hogehoge</body></hoge>'
  4. end

みたいにします
もちろんerbなどのテンプレートを用いることも可能

・sequelで削除

RUBY:
  1. Posts.filter('id = ?', request[:id]).delete

みたいな感じ
findだとdeleteメソッドがないって怒られた イミフ

・jqueryでAjax

JAVASCRIPT:
  1. var params = {};
  2.   $('input').each(function(){ params[this.name] = this.value });
  3.   ajax = $.post('/post',
  4.         params,
  5.         function(responseText){
  6.           var res = responseText;
  7.           if(res != 'failed'){
  8.             alert('posted!');
  9.           } else {
  10.             alert('failed');
  11.           }
  12.         }
  13.       );

inputのvalueをハッシュ(JSON?)にセットしてpostするとシンプル…かな?

, , ,

sinatraでレイアウトを無効にする

5月 28th, 2009

sinatraでも(Ajaxなんかで)HTMLを返す際にレイアウトを無効に出来ます
Templateを指定する部分で
erb :index, :layout => false
と指定します

Sinatraでファイルアップロード

5月 26th, 2009

Sinatraというか、Rackのparamsを用いたアップロードの仕方ですね
rubyではいつもファイルのアップロードの仕方を忘れてしまうのでメモメモ

RUBY:
  1. post '/upload' do
  2.     if params[:file]
  3.         new_filename = DateTime.now.strftime('%s') + File.extname(params[:file][:filename])
  4.         save_file = './public/files/' + new_filename
  5.         File.open(save_file, 'wb'){ |f| f.write(params[:file][:tempfile].read) }
  6.         @mes = 'upload completed!'
  7.     end
  8. end

普通に:tempfileを移動するだけでもいい気がする…
Sinatra簡単でいいですね
久々のプログラミング楽しい

@iMRC 文化祭向けには(出来れば面白い)画像のアップローダーでも作ろうかと思ってます…皆写真撮るよね?

,