你该不会是放在 assets/stylesheets/bootstrap/ 下了吧
#2 楼 @ChanceDoor 因为 devise 现在默认不会相应 json,所以必须设置一下。
是不是发现取不到 current_user 啊 config/appliacation.rb
config.to_prepare do
DeviseController.respond_to :html,:json
end
不正常,楼主你肯定是怀孕了〜
#2 楼 @tyaccp_guojian 那部署之后 rake db:create migrate 了吗……
数据库想部署到服务器的话,似乎不应该在 .gitignore 里写才对吧
UsersController 里面
def create
@user = User.new(user_params)
if @user.save
flash[:success] = "Welcome to the Sample App!"
render 'select_type'
else
render 'new'
end
end
为什么要 render?render 的话,select_type 和 update_type 都是取不到 params[:id] 的,因为取不到这个值,所以
<%= form_for( @user,url: {action: "update_type"} , html: {method: "patch"}) do |f| %>
这里的 action: "update_type",就会以为你要的 url 是 /users/update_type,很明显,你的 routes 里面没有符合的,于是就报错说
No route matches {:action=>"update_type", :controller=>"users"}
这时候,只需要把 render 'select_type' 改成
redirect_to select_type_user_path(@user)
就好了。 至于你问的下面
<%= form_for( @user,url: update_type_user_path(@user) , html: {method: "patch"}) do |f| %>
<%= form_for( @user,url: {action: "update_type"} , html: {method: "patch"}) do |f| %>
这俩的区别,相信看了我上面说的那么多,你应该已经知道了。
什么叫做动态的文本框……
#2 楼 @jiwoorico As of v3.0, jquery-rails no longer includes jQuery UI. Use the jquery-ui-rails gem
sqlitebrowser
是不是用了 jquery-ui-rails ?
有针对性的找对象本身就是一种耍流氓的行为
git clone 了一下居然花了我一分多钟,对你在 代码里面加视频的做法表示无法理解……
def destroy
@nutrition = Nutrition.find(:id) # params[:id]
@nutrition.destroy
...
end
rails g model Employee name:string manager_id:integer
rake db:migrate
class Employee < ActiveRecord::Base
has_many :subordinates, class_name: "Employee", foreign_key: "manager_id"
belongs_to :manager, class_name: "Employee"
end
manager = Employee.create(name: "test_of_manager")
s = manager.subordinates.create(name: "test_of_subordinate")
manager.subordinates
s.manager
长相问题不要怪职业
@custom.to_xml methods: [:distince]
传习录
跟你之前那个帖是同样地问题啊。 首先你这里的
@user = User.find(current_user)
取到的是当前用户,但是你之后的
@two = @user.twos.find(params[:id])
这行里,params[:id] 取到的 id 是当前页面的 two 的 id。问题在于,你取到的当前用户是要添加 comment 的用户,而不一定是拥有这个 two 的用户,所以出现 Couldn't find Two without an ID。 而要取得当前页面的 two,可以直接
@two = Two.find(params[:id])
然后
@comment = @two.comments.new(user_id: current_user, ...)
你非要反过来的话就得这样
@user = User.find(current_user)
@two = Two.find(params[:id])
@comment = @user.new(two_id: @two.id, ...)
不过要记得,必须要手动指定 user_id,或者 two_id,因为这两个属性不会存在 params[:comment] 里面,另外,Rails 3.2.8 之后 4.0.0 之前,要用 params[:comment] 要记得加上
attr_accessible: :aaa, :bbb, :ccc
差不多就这样,这些都很基础的,LZ 你先把官方的 Guides 过一遍,基本就懂了。