如何在Rails中显示嵌入式Twitter时间轴? (使用Twitter小部件)

时间:2017-07-19 21:46:00

标签: javascript ruby-on-rails twitter

新的铁路。

我正在尝试使用带有Rails应用程序的Twitter Widgets生成器来显示嵌入式网格时间轴。

我的问题是,当我将以下生成的代码粘贴到视图中时,我只会在localhost:3000的视图中显示一个链接:

<a class="twitter-grid" data-lang="en" data-limit="6" data-dnt="true" href="https://twitter.com/TwitterDev/timelines/539487832448843776">National Park Tweets</a>
<script async src="https://platform.twitter.com/widgets.js" charset="utf-8"></script>

显然,Rails正在为页面加载剥离JS。

资源我读到之前尝试解决这个问题,然后来到这里(以及其他一些博客文章)。没有足够的代表发布所有链接:

  1. 资产管道 - RubyonRails.org
  2. Unholy Rails:向Rails添加JavaScript - RailsApps
  3. 在Rails中使用JavaScript
  4. 使用Rails缓存 - RubyonRails.org
  5. 也许答案在材料中,但我无法辨别它。

    我得到了Twitter提供的代码,可以在一个单独的目录中正常工作,我只需创建一个空白HTML文档并将其粘贴。另外,我实际上能够在.html.erb文件中看到时间轴网格。当我只是使用Atom的HTML预览器并将脚本与链接一起保存在视图中时,我在抱怨。

    我尝试了以下尝试,以及其他尝试。其中一些可能是黑暗中的镜头。我知道外部脚本应该进入供应商目录,但我首先使用应用程序来查看它们是否有效。一旦我能让他们工作,我会将他们移到适当的位置:

    1. 伪造我的开发环境的config.assets.debug并确保我在开发模式下启动服务器。
    2. http://reed.github.io/turbolinks-compatibility/twitter.html">Turbolinks解决方案1和2.
    3. 使用&lt;%= javascript_include_tag&#34; given_script_url&#34; %GT;在视图内部并通过将该URL的javascript复制并粘贴到本地文件app / assets / javascripts文件中来执行相同操作。
    4. 将dev.twitter.com/web/javascript/loading小部件js脚本包含在app / assets / javascripts目录中的javascript文件中,并删除标记。 4B。使用javascript_include_tag在视图中包含此javascript文件并引用文件名。 4C。利用&lt;%= javascript_include_tag&#34; my_js_file&#34;,&#34; data-turbolinks-track&#34; =&GT; &#34;重新加载&#34; %GT;带有文件名的方法,并按照我的错误消息的指示将Rails.application.config.assets.precompile + =%w(twitter.js)添加到config / initializers / assets.rb
    5. 重新启动服务器并再次尝试所有这些。
    6. 我终于点击了,因为我不知道还有什么要检查或尝试。

      非常感谢任何帮助。我花了很多时间把头撞到键盘上,这对于一个更高级的开发人员来说可能是一个简单的修复。

      我应该怎样做才能让Twitter网格显示出来?如果你不介意为我拼写,就像我是一个完整的菜鸟(我是),我们将不胜感激。谢谢!

1 个答案:

答案 0 :(得分:0)

<a class="twitter-timeline" data-dnt="true" href="https://twitter.com/name_of_your_timeline" data-widget-id="539487832448843776" height="46vh" >National Park Tweets</a>