我知道这个问题之前已经以一种形式或另一种形式提出过,但我仍然无法为此找到有效的解决方案.
我正在网上提供saas课程,代码直接从https://github.com/saasbook/hw3_rottenpotatoes克隆
当我从命令提示符运行黄瓜时
Using the default profile...
You have already activated activesupport 3.2.1, but your Gemfile requires activesupport 3.1.0. Using bundle exec may solve this. (Gem::LoadError)
/Users/chemin/.rvm/gems/ruby-1.9.2-p290@rails3tutorial/gems/bundler-1.0.21/lib/bundler/runtime.rb:31:in `block in setup'
/Users/chemin/.rvm/gems/ruby-1.9.2-p290@rails3tutorial/gems/bundler-1.0.21/lib/bundler/runtime.rb:17:in `setup'
/Users/chemin/.rvm/gems/ruby-1.9.2-p290@rails3tutorial/gems/bundler-1.0.21/lib/bundler.rb:110:in `setup'
/Users/chemin/.rvm/gems/ruby-1.9.2-p290@rails3tutorial/gems/bundler-1.0.21/lib/bundler/setup.rb:7:in `<top (required)>'
/Users/chemin/.rvm/rubies/ruby-1.9.2-p290/lib/ruby/site_ruby/1.9.1/rubygems/custom_require.rb:59:in `require'
/Users/chemin/.rvm/rubies/ruby-1.9.2-p290/lib/ruby/site_ruby/1.9.1/rubygems/custom_require.rb:59:in `rescue in require'
/Users/chemin/.rvm/rubies/ruby-1.9.2-p290/lib/ruby/site_ruby/1.9.1/rubygems/custom_require.rb:35:in `require'
/Users/chemin/rails_projects/saas/hw3_rottenpotatoes/config/boot.rb:6:in `<top (required)>'
/Users/chemin/.rvm/rubies/ruby-1.9.2-p290/lib/ruby/site_ruby/1.9.1/rubygems/custom_require.rb:55:in `require'
/Users/chemin/.rvm/rubies/ruby-1.9.2-p290/lib/ruby/site_ruby/1.9.1/rubygems/custom_require.rb:55:in `require'
/Users/chemin/rails_projects/saas/hw3_rottenpotatoes/config/application.rb:1:in `<top (required)>'
/Users/chemin/.rvm/rubies/ruby-1.9.2-p290/lib/ruby/site_ruby/1.9.1/rubygems/custom_require.rb:55:in `require'
/Users/chemin/.rvm/rubies/ruby-1.9.2-p290/lib/ruby/site_ruby/1.9.1/rubygems/custom_require.rb:55:in `require'
/Users/chemin/rails_projects/saas/hw3_rottenpotatoes/config/environment.rb:2:in `<top (required)>'
/Users/chemin/.rvm/rubies/ruby-1.9.2-p290/lib/ruby/site_ruby/1.9.1/rubygems/custom_require.rb:55:in `require'
/Users/chemin/.rvm/rubies/ruby-1.9.2-p290/lib/ruby/site_ruby/1.9.1/rubygems/custom_require.rb:55:in `require'
/Users/chemin/.rvm/gems/ruby-1.9.2-p290@rails3tutorial/gems/cucumber-rails-1.3.0/lib/cucumber/rails.rb:7:in `<top (required)>'
/Users/chemin/.rvm/rubies/ruby-1.9.2-p290/lib/ruby/site_ruby/1.9.1/rubygems/custom_require.rb:59:in `require'
/Users/chemin/.rvm/rubies/ruby-1.9.2-p290/lib/ruby/site_ruby/1.9.1/rubygems/custom_require.rb:59:in `rescue in require'
/Users/chemin/.rvm/rubies/ruby-1.9.2-p290/lib/ruby/site_ruby/1.9.1/rubygems/custom_require.rb:35:in `require'
/Users/chemin/rails_projects/saas/hw3_rottenpotatoes/features/support/env.rb:7:in …Run Code Online (Sandbox Code Playgroud) 当我正在开发运行BlueTooth应用程序时,我偶尔会在控制台上收到消息"CoreBluetooth [WARNING] Unknown error:1309".即使消息声明它是一个警告,它也会停止执行应用程序.我已经能够通过关闭蓝牙设置然后重新打开来解决这个问题.任何人都可以告诉我是什么导致这个以及我应该做些什么来避免它?
总新手试图通过lynda.com上的rails教程
代码非常简短,与视频完全一样,但我无法让我的页面呈现部分.当我在服务器上运行它时,它根本不会渲染部分,而只是跳过它.没有错误消息.提前致谢
这是edit.html.erb
<%= link_to("<< Back to List", {:action => 'list'}, :class => 'back=link')%>
<div class="subject edit">
<h2>Edit Subject</h2>
<%= form_for(:subject, :url => {:action => 'update', :id=>@subject.id}) do |f| %>
<% render :partial => 'form', :locals => {:f => f} %>
<div class="form-buttons">
<%= submit_tag("Update Subject")%>
</div>
<% end %>
</div>
Run Code Online (Sandbox Code Playgroud)
这是_form.html.erb
<table summary="Subject form fields">
<tr>
<th>Name</th>
<td><%= f.text_field(:name) %></td>
</tr>
<tr>
<th>Position</th>
<td><%= f.text_field(:position) %></td>
</tr>
<tr>
<th>Visible</th>
<td><%= f.text_field(:visible) %></td>
</tr>
</table>
Run Code Online (Sandbox Code Playgroud) 我正在研究Hartl书籍的9.3.3,并继续陷入困境
SessionsController的未定义方法`sign_in':0x00000100c0da90
我知道这是因为sign_in方法位于sessions_helper文件中,该文件由模型而不是控制器拾取.Hartl书不需要"包含SessionsHelper"行.
如果我把那个hack,我假设我不应该这样做,那么它最终会以另一个错误登陆我undefined方法current_user
这是代码
SessionsController.rb
class SessionsController < ApplicationController
def new
@title = "Sign in"
end
def create
user = User.authenticate( params[:session][:email],
params[:session][:password])
if user.nil?
flash.now[:error] = "Invalid email/password combo."
@title = "Sign in"
render 'new'
else
sign_in user
redirect_to user
end
end
def destroy
end
Run Code Online (Sandbox Code Playgroud)
以及sessions_helper.rb
module SessionsHelper
def sign_in(user)
cookies.permanent.signed[:remember_token] = [user.id, user.salt]
self.current_user = user
end
Run Code Online (Sandbox Code Playgroud)