我目前有以下宁静的网址:
/questions/2011/05/
Run Code Online (Sandbox Code Playgroud)
我的提问路线是:
match 'questions/:year/:month/' => 'Questions#month'
Run Code Online (Sandbox Code Playgroud)
如何在路线级别验证上述年份和月份参数,以便:
在 django 中,我可以使用以下行执行上述操作:
url(r'^questions/(?P<year>\d{4})/(?P<month>\d{2})/$', 'questions.views.month'),
Run Code Online (Sandbox Code Playgroud)
我正在浏览 Rails 指南并进行谷歌搜索,但在路由级别找不到相应的功能。上述内容是在控制器级别完成的吗?
所以我在我的用户模型上有一个性别列,它当前是一个字符串,我想把它改成一个整数并使其成为男'1',女'0'因为它现在是男性"M"女性"F".运行此迁移时:
class ChangeGenderToIntegerOnUser < ActiveRecord::Migration
def change
change_column :users, :gender, 'integer USING CAST(gender AS integer)'
end
end
Run Code Online (Sandbox Code Playgroud)
我收到以下错误:
错误信息:
PG::InvalidTextRepresentation: ERROR: invalid input syntax for integer: "M"
: ALTER TABLE "users" ALTER COLUMN "gender" TYPE integer USING CAST(gender AS integer)/usr/local/rvm/gems/ruby-2.0.0-p247/gems/activerecord-4.0.0.rc1/lib/active_record/connection_adapters/postgresql/database_statements.rb:128:in `exec'
Run Code Online (Sandbox Code Playgroud)
我该怎么做才能将性别正确地改为整数?
提前致谢!