Tag: 的Ruby on 轨道

Rails错误:无法批量分配受保护的属性

我正在尝试构build一个非常简单的AddressBook rails应用程序。 但是,我收到此错误“无法批量分配受保护的属性:city_id”。 我怎样才能解决这个问题? 请随意添加任何评论/build议到您的答案关于下面的rails代码。 谢谢。 我如何创build项目(从头开始): rails new demo rails generate model City name:string rails generate scaffold User name:string city:references rake db:migrate DB / seeds.db: City.create(name: "City1") City.create(name: "City2") City.create(name: "City3") 耙db:种子 将此行<%= f.text_field :city %>从app/views/users/_form.html.erb为<%= f.collection_select :city_id, City.all, :id, :name %> 改变了user.rb自动生成的行belongs_to :city到has_one :city 。 添加了belongs_to :city到city.rb PS:我正在使用Rails 3.2.3和Ruby 1.9.3。

你如何从轨道控制器操作发出404响应?

从轨道控制器操作发出404响应的首选方式是什么?

在URL中的Rails slug – 使用Active Record Model Post的Title属性而不是ID

我一直在试图让我的Rails创buildurl来显示logging,通过使用他们的标题,而不是他们在URL中的ID,如: /职位/ A-后约-火箭 在线教程后,我做了以下几点: 由于ID不再在URL中,所以我们必须稍微改变代码。 class Post < ActiveRecord::Base before_create :create_slug def to_param slug end def create_slug self.slug = self.title.parameterize end end 创buildpost时,标题的URL友好版本存储在数据库中的slug列中。 我们还必须更新查找使用slug列而不是使用ID查找logging。 class ProjectsController < ApplicationController def show @project = Project.find_by_slug!(params[:id]) end end 在这一点上,似乎工作,除了显示一个logging,因为find_by_slug! 还不存在。 我是一个极端的新手 – 我应该在哪里定义它?

耙数据库:回滚不工作?

我在写我的第一个Rails应用程序。 我运行了几个rails generate model …和rake db:migrate命令,但是现在我想更改我的数据模型,因此需要撤消一些迁移。 文档说我可以用rake db:rollback撤销迁移,但是这不起作用。 当我在控制台中运行这个时,计算机会想几秒钟,但是不会对db/migrate/或db/migrate/schema.rb进行任何更改。 没有输出打印到控制台。 这种行为是正确的吗? 不应该db:rollback改变我的模式? 如果是这样,谁能想到为什么它可能不工作? 我在Rails v。3.2.6上。 编辑 目前rake db:migrate:status给出 database: db/development.sqlite3 Status Migration ID Migration Name ————————————————– up 20120617191211 Create irs up 20120701154357 Create paths up 20120701154421 Create nodes up 20120702151447 ********** NO FILE ********** down 20120702155140 Create venues down 20120703233833 Remove path from venues

ruby-debug安装错误:无法构buildgem原生扩展

我使用rails 3运行1.9.2。 我正在使用rvm。 我做了: sudo gem install ruby-gem 并得到: Building native extensions. This could take a while… ERROR: Error installing ruby-debug: ERROR: Failed to build gem native extension. /Users/blankman/.rvm/rubies/ruby-1.9.2-head/bin/ruby extconf.rb Can't handle 1.9.x yet *** extconf.rb failed *** Could not create Makefile due to some reason, probably lack of necessary libraries and/or headers. Check the […]

如何定义轨道移植的布尔型字段

我想添加一个布尔值字段(“is_public”)到表“my_model”。 目前我可以使用这个: class AddPublicToDream < ActiveRecord::Migration def self.up add_column :my_model, :is_public, :string end def self.down remove_column :my_model, :is_public, :string end end 然后,我可以在控制器中为mymodel.is_public分配“true”或“false”。 我可以使用:booleanreplace:string来实现相同的效果吗? 它会节省一些数据库空间比较:string?

Rails的date格式在text_field

我有一个在text_field中显示date的导轨forms: <%= form.text_field :check_in_date %> date呈现为yyyy-mm-dd 我想弄清楚如何让它显示为mm-dd-yyyy 我试图添加这个configuration,但它没有工作。 ActiveSupport::CoreExtensions::Date::Conversions::DATE_FORMATS.merge!( :default => '%m/%d/%Y' )

validation用户使用omniauth和Facebook的轨道API?

我构build了一个Rails API,并成功构build了一个用户使用Omniauth Identity进行身份validation的方法。 我们只需从客户端发送auth / identity / callback,传入一个auth_key和密码。 服务器然后返回一个守门员令牌,然后用户从此使用门禁令牌来访问应用程序并识别他们自己。 这张图解释了这一点: 我们现在希望从客户端实现Facebooklogin,但在理论和实践上都难以实现。 在一个带有Omniauth Identity的简单Rails应用程序中,您只需调用auth / facebook,但是如果我们在客户端中放置了一个链接,就会调用服务器,然后服务器就会logging: INFO — omniauth: (facebook) Request phase initiated. 该应用程序在Facebook中设置正确的ID和秘密,所以也许login提示返回到服务器? 虽然链接authentication,我感到困惑。 任何帮助感激地感谢!

什么是:级联在rails schema.rb中,它来自哪里?

在添加另一个迁移并偶尔决定删除和迁移后,我检查了我的schema.rb并看到了这个 create_table "users", force: :cascade do |t| 我还没有承诺这个变化,并在遥远的我有这个 create_table "users", force: true do |t| 现在我已经在每张桌子的前面连成一片了。 什么是级联,它是从哪里来的?

如何将图像转换为Rails中的链接?

我只是想在图片上做一个简单的链接。 <a href="http://www.mysite.com"><img src="path/to/image.png"/></a> 你怎么用link_to rails标签来做到这一点?