1

私は一般的にレールとMVC開発に非常に慣れておらず、bitlyへの外部API呼び出しを行うアプリに取り組んでいます。

以下をビューに配置して、fb と twit に使用する shorturl を生成しました。

<% Bitly.use_api_version_3
  bitly = Bitly.client
  shareUrl = bitly.shorten("http://example.com/#{id}").short_url%>

これを行ったので、このページが表示されるたびに少しずつ呼び出していることに気付きました。キャッシュを許可するよりもモデルビューでこれを行う方が効率的だと思います。それは理にかなっていますか?モデルでこのアクションをどのように実行しますか?

4

3 に答える 3

0

私はこれらを、さまざまな外部 API の処理を​​担当するサービスに入れることを好みます。

いつものように、サービス オブジェクトを作成するための RailsCast がありますhttp://railscasts.com/episodes/398-service-objects

于 2013-11-07T00:50:51.210 に答える
0

API を別のモデル ファイルに配置し、コントローラーを介して呼び出し、対応するビューに渡すことを常にお勧めします。そうすることで、コントローラーで API 呼び出しを調整できます。

于 2013-09-20T16:34:10.047 に答える
0

モデルで次のことを行うことになりました

before_save :set_shareUrl 
def set_shareUrl 
 Bitly.use_api_version_3 
 bitly = Bitly.client 
 self.shareURL = bitly.shorten("http://example.com/#{id}").short_url 
end
于 2014-02-06T16:24:00.137 に答える