Ruby on rails 入口不是';无法正确保存到我的数据库?
这是我的模式文件Ruby on rails 入口不是';无法正确保存到我的数据库?,ruby-on-rails,ruby-on-rails-3,sqlite,Ruby On Rails,Ruby On Rails 3,Sqlite,这是我的模式文件 ActiveRecord::Schema.define(:version => 20120505115340) do create_table "clients", :force => true do |t| t.string "name" t.string "detail" t.string "more_detail" t.string "more_details" t.datetime "create
ActiveRecord::Schema.define(:version => 20120505115340) do
create_table "clients", :force => true do |t|
t.string "name"
t.string "detail"
t.string "more_detail"
t.string "more_details"
t.datetime "created_at", :null => false
t.datetime "updated_at", :null => false
end
create_table "jobs", :force => true do |t|
t.string "name"
t.integer "number"
t.string "responsible"
t.string "monthly"
t.string "quarterly"
t.string "other"
t.datetime "created_at", :null => false
t.datetime "updated_at", :null => false
end
end
这是我的迁移文件
class CreateClients < ActiveRecord::Migration
def change
create_table :clients do |t|
t.string :name
t.string :detail
t.string :more_detail
t.string :more_details
t.timestamps
end
end
end
class CreateJobs < ActiveRecord::Migration
def change
create_table :jobs do |t|
t.string :name
t.integer :number
t.string :responsible
t.string :monthly
t.string :quarterly
t.string :other
t.timestamps
end
end
end
class CreateClients
在我的视图文件中,我对其进行了设置,以便is拉出客户端.name
并将其显示给用户
然而,当我创建一个新条目时,我得到的只是/clients/1
,而不是我在表单中指定的名称
当我尝试迁移数据库时,什么也没有发生,然后当我尝试删除数据库以重新开始时,它告诉我它确实存在。如果我理解正确,您是否担心您的视图会为新创建的对象显示指向
/clients/1
的链接
这是使用RubyonRails时的默认路径,是您正在使用的path helper对象_path(object)将生成的路径。这可以自定义(请参见上的指南)。如果这不是问题,那么您的应用程序可以正常工作
顺便说一句,默认路径中使用的数字是指给定给对象的id
。使用ActiveRecord存储的所有对象将自动获得唯一的id
,可用于标识对象。正如模式中的在
处创建列和在
处更新列一样,id
列将被创建,无论您是否在模式中明确定义它
要重置数据库(删除、重新创建并迁移到当前架构),请使用以下命令:
rake db:reset
编辑:
应生成以下HTML(其中CLIENT_NAME是客户端的NAME属性)
如果我理解正确,您是否担心视图会显示新创建对象的
/clients/1
链接
这是使用RubyonRails时的默认路径,是您正在使用的path helper对象_path(object)将生成的路径。这可以自定义(请参见上的指南)。如果这不是问题,那么您的应用程序可以正常工作
顺便说一句,默认路径中使用的数字是指给定给对象的id
。使用ActiveRecord存储的所有对象将自动获得唯一的id
,可用于标识对象。正如模式中的在
处创建列和在
处更新列一样,id
列将被创建,无论您是否在模式中明确定义它
要重置数据库(删除、重新创建并迁移到当前架构),请使用以下命令:
rake db:reset
编辑:
应生成以下HTML(其中CLIENT_NAME是客户端的NAME属性)
但我在视图中调用的属性不是id。在我尝试将DB迁移到aadd作业表之前,这是有效的。因此。。在我的表单中,我保存:name属性。为什么它只显示客户id?正如我所说的,它显示了客户的名字。除了尝试使用新模型迁移db之外,我没有接触过我的代码。如果helps=>我相信这是一个与数据库相关的问题,就像我导航到/clients/目录并添加一个新客户机并点击save时一样,我会将我的代码放到GitHub上。表单将输入,但不会保存任何信息。但我在视图中调用的属性不是id。在我尝试将DB迁移到aadd jobs表之前,这是有效的。因此。。在我的表单中,我保存:name属性。为什么它只显示客户id?正如我所说的,它显示了客户的名字。除了尝试使用新模型迁移db之外,我没有接触过我的代码。如果helps=>我相信这是一个与数据库相关的问题,就像我导航到/clients/目录并添加一个新客户机并点击save时一样,我会将我的代码放到GitHub上。表单将输入,但不会保存任何信息。
<a href="/clients/1">CLIENT_NAME</a>