问题标签 [railstutorial.org]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
ruby-on-rails - Ruby on rails 和 Node.js
我想知道如何将 node.js 集成到 rails 应用程序(用于学习目的)。
基于 Michael Hartl 教程 ( http://railstutorial.org/ ),我实现了一个带有 rails 的基本 twitter 克隆,并希望在不使用 comet 或 juggernaut 的情况下实时获取用户微帖子。(应用程序托管在 heroku 上)
目前,我只看到带有 node.js 框架的示例(http://howtonode.org/grasshopper-shoutbox),但没有与 ruby on rails 应用程序合并。如果有人知道一个好的教程或给我一些开始以完成此任务,我将非常感激。
谢谢!
ruby-on-rails - Rails 3教程第11章“验证失败:电子邮件已被占用”错误
我的麻烦出现在 Ruby on Rails 教程的第 11章。
我看到了这个 rspec 错误:
先入user_spec.rb
再入micropost_spec.rb
。这很令人费解。我认为每次 autotest 运行 rspec 时,工厂语句都会在新的测试数据库中生成一个用户。我用 git 从 master 分支检查了源文件并再次尝试,但看到了同样的错误。因此,我怀疑它与数据库内容有关,而不是代码。
所以,我做了以下事情:
......一切都变绿了。rspec 测试通过。
可能有一个更“切中要害”的解决方案,但我很高兴这能奏效。希望它可以帮助别人。我只能得出结论,我的测试/开发以某种方式向数据库添加了一些意想不到的东西。我想上述步骤是在第 11 章快结束时让自己成为一个新鲜数据库的好方法。
有没有更直接的方法来解决这个问题?该错误是否表明我在没有意识到的情况下解决了其他问题?我认为运行 rspec 并不能保证每次都有新的测试数据库。这是一个错误的假设吗?
ruby-on-rails - railstutorial.org 中的 SessionsHelper:助手应该是视图中不需要的代码的通用模块吗?
railstutorial.org 有一个让我觉得有点奇怪的建议。
使这些include SessionsHelper
方法可以从中使用ApplicationController
,是的,但它也使它们在任何视图中都可用。我知道身份验证/授权是跨领域的,但这真的是最好的地方吗?
在我看来,这可能范围太广了。例如,将实现before_filter
有条件重定向的代码(如 railstutorial.org 示例所做的那样)放在更常见的包含视图助手的模块中似乎令人惊讶。
视图中不需要的功能会更好地放在 ApplicationController 或其他地方吗?
还是我只是想太多了?
ruby-on-rails - Rails 教程 — 9.3.3 Current_User
所以我正在关注Rails 教程,我已经到了我们想要使用 sign_in SessionHelper 登录用户的部分。
问题一:
我遇到的困难是这部分内容:
问题是它完全无法解决我们的问题:使用该代码,用户的登录状态将被遗忘:只要用户转到另一个页面。
我不明白这是怎么回事?我继续阅读并理解添加的代码确保@current_user 永远不会为零。但是如果我们只是在第 5 行建立它,我看不到 current_user 将如何恢复为零。
问题 2:
更新后的代码如下:
在 remember_token 助手中,为什么它使用 cookies.signed[] 而不是 cookies.permanent.signed[] 以及为什么不使用我们刚刚学习的 ||= 运算符?
问题 3:
为什么我们需要authenticate_with_salt?如果我进行身份验证和登录可以看到传递给它的用户的 id 和 salt 属性,为什么我们需要 double_check 呢?什么样的情况会引发混淆?
ruby-on-rails - Michael Hartl 的 Rails 3 教程:has_password 有问题吗?第 7 章中的方法
这整个早上都在踢我的屁股。
现在,我刚刚开始 Michael Hartl 的优秀Ruby on Rails 3 教程的第 7.2.4 章,我遇到了一些问题。has_password?
本节首先在 Rails 控制台沙箱中快速检查该方法。这是我输入的内容:
这应该是返回true
。
这是我的user.rb
模型:
我所有的RSpec
测试都完美通过了,据我所知,我已经逐字编码了书中的所有内容——我什至复制/粘贴了一些代码以确保。我根本看不出有任何失败的理由,所以任何帮助都将成为救命稻草。
这是本书的在线链接:[链接]
ruby-on-rails-3 - 路由错误,来自 railstutorial.org 的 Michael Hartl 的截屏视频
我正在关注来自 railstutorial.org 的 Michael Hartl 的截屏视频。根据第 5 章,我将 config/routes.rb 更改为:
和 _footer.html.erb 到:
- <%= link_to "关于", about_path %>
- <%= link_to "联系人", contact_path %>
和 _header.html.erb 到:
我是 Ruby on Rails 的新手。我在浏览器中收到路由错误
没有路线匹配“/pages/contact”
我正在使用 ruby 1.9.2p180(2011-02-18 修订版 30909)[x86_64-linux]、rails 3.0.7 和 gem 1.6.2 请帮忙。
ruby-on-rails - RailsTutorial 登录 flash 不工作
我试图让错误闪烁出现在 railstutorial.org 示例应用程序中。到目前为止,这就是我所做的。谁能帮我找出错误:
我的 RSPEC 测试失败:
控制器代码:
测试代码:
ruby-on-rails - 使用 rake db 的问题:railstutorial.org 第 2 章上的迁移
我正在关注railstutorial.org上的 rails 教程
我在第 2 章中,并尝试按照说明使用 rake 迁移数据库:“要继续演示应用程序,我们首先需要使用 Rake 迁移数据库(框 2.1)”:
这不起作用,我收到以下错误:
我该如何解决这个问题?
javascript - 按钮在 Ajax - Rails 教程 3 中未更新,第 12.2.5 节
我正在阅读 Michael Hartl 的 Rails 教程,在第 12.2.5 节遇到了一个小障碍,我们应该在这里使用 Ajax 创建一个工作按钮。我知道代码是正确的(我直接从书中复制了它并重新输入了三遍)而且我是绿色的。但它实际上不起作用!
通过本教程的这一部分,我们将更改常规表单提交按钮以使用 Ajax,以便整个页面不会“刷新”(实际上,重定向到同一页面),而只是按钮和相应的侧边栏项目更新。问题是按钮不会像我期望的那样在单击时自动重新加载。它会在页面刷新时重新加载。如果我在浏览器中禁用 JS,它会恢复 - 它应该 - 触发重定向并“刷新”整个页面的 HTML 版本。如果您想知道,我已经尝试过刷新页面,并且我已经尝试过 Firefox、Safari 和 Chrome 以及 Incognito 中的 Chrome。我已经关闭并重新启动了 rails 服务器、spork 和 autotest。我重写了所有的代码,然后复制了本书的所有代码。还是一头雾水。
因此,即使测试是绿色的,我的工作功能也不完美。也许我缺少一些东西,你可以帮我找到它吗?也许我错过了一个与 javascreipt 相关的 gem,一个 Ajax gem ......
代码的相关部分:
关系控制器.erb:
结尾
_follow.html.erb:
<%= form_for(current_user.relationships.build(:followed_id => @user.id), :remote => true) 做 |f| %> <%= f.hidden_field :followed_id %>
<%= f.submit "Follow" %> <% end %>
_unfollow.html.erb:
<% 结束 %>
创建.js.erb
销毁.js.erb
我还确保该行包含在 application.html.erb 中
如果您还需要评估情况,请询问,我会及时回复。
TIA
ruby-on-rails-3 - 不推荐对 Rake DSL 方法进行全局访问
我正在阅读 Ruby on Rails 3 教程书,并在命令行上键入以下内容:
这产生了以下警告。
我不知道该怎么做或如何使用它。我不知道 Rake 的任何其他命令。
我该如何解决这个问题?