小编Web*_*rit的帖子

Rails迁移:仅用于架构更改或更新数据?

我是初级Rails开发人员,在工作中我们遇到了以下问题:

只需为一条记录更新列的值.我们做的是创建这样的迁移:

class DisableAccessForUser < ActiveRecord::Migration
  def change
    User.where(name: "User").first.update_column(:access, false)
  end
end
Run Code Online (Sandbox Code Playgroud)

迁移仅适用于架构更改吗?

你还建议其他什么解决方案?

PS:我只能用代码更改它.无法访问控制台.

migration ruby-on-rails

24
推荐指数
1
解决办法
7045
查看次数

rake db:create之后的MySql错误1045

我创建了一个新的Rails项目,我使用了scaffold,然后尝试使用db:create.我没有更改config/database.yml所以密码为空(我总是输入我用来登录localhost/phpmyadmin的密码,但这次我忘记了)

开发:适配器:mysql2编码:utf8重新连接:false数据库:test_associations_development pool:5用户名:root密码:socket:/tmp/mysql.sock

所以,回到终端我有以下消息:

>******* >

>*******

>*******

>*******

在此之后,我无法登录到phpmyadmin,当我在本地运行我的应用程序时,我收到此错误:

Mysql2 ::错误

用户'root'@'localhost'拒绝访问(使用密码:YES)

我使用的是OS X 10.7.2,Rails 3.2,Ruby 1.9.3

有任何想法吗??

mysql ruby-on-rails ruby-on-rails-3

15
推荐指数
1
解决办法
1万
查看次数

或者&在Rails ActiveRecord where子句中

我正在使用Rails 3.2,我有一个数据库表,我想在其中找到符合以下条件的所有行:

a = true且b = true且(0 <c <1或d = 1),a,b,c,d为列.

我可以有类似的东西:

 Route.where(:a => true,
             :b => true,
             :c => 0..1 OR :d=1
             ).all          
Run Code Online (Sandbox Code Playgroud)

activerecord ruby-on-rails ruby-on-rails-3

11
推荐指数
2
解决办法
3万
查看次数

Rails 4,Devise - 登录时的错误消息无法正常工作

github上的一段代码:http://bit.ly/ZMSJXQ

1)登录时,如果出现以下情况,我不会收到任何错

  • db中不存在电子邮件
  • 密码为空
  • 密码错了

devise_error_messages!是空的,因为resource.errors是空的.看起来资源没有得到验证.为什么?


2)如果我跑,resource.valid?然后resource.errors返回:email=>["has already been taken"], :password=>["can't be blank"]

我收到错误消息,但它们不正确."已经使用电子邮件"登录时没有意义.为什么?

(注册,重置密码等工作正常.)

ruby-on-rails devise

6
推荐指数
1
解决办法
3335
查看次数