Rails twitter gem导致错误缺少必需参数:status

时间:2013-04-14 15:29:58

标签: ruby-on-rails-3 twitter gem twitter-gem

我正在使用带有rails的twitter gem来检索用户时间轴并发布更新:

  def index
    @tweets = Twitter.home_timeline
  end

  def tweet
    text = params[:text]
    Twitter.update(text) unless text = nil
  end

通过jquery / ajax发送请求的视图:

<input type="text" class="tweet-box" placeholder="tweet something" />
<input type="submit" class="tweet-button" value="tweet" />

<script type="text/javascript">
    $(".tweet-button").on('click',function(e){
        e.preventDefault();
        $.post('/twitters/tweet', { text: $(".tweet-box").val() });
    });
</script>

最后路线:

get "twitters/index"
post "twitters/tweet"

获取时间线工作正常,但是在尝试发送更新时,我收到此错误:

  

缺少必需参数:状态

有什么问题?

由于

2 个答案:

答案 0 :(得分:0)

在我的情况下使用相同的错误消息,结果发现我的文本变量等效为空字符串。你检查没有?尝试检查空?

答案 1 :(得分:0)

“除非text = nil”

这是设置文本为零,因此没有文本传递给update()

一个好习惯是始终把文字放在左边:

nil == text

这样,如果你为get ==和do =它会失败,因为你不能分配给文字。

尝试“除非text == nil”或“除非text.nil?”