Mysql RubyonRails未定义的方法`where';对于#<;等级:0x10377d590>;

Mysql RubyonRails未定义的方法`where';对于#<;等级:0x10377d590>;,mysql,ruby-on-rails,macos,Mysql,Ruby On Rails,Macos,我正在尝试从Windows7迁移到MacOSX。 我已经安装了以下程序 ruby 1.8.7(2009-06-12补丁级别174)[通用-达尔文10.0] mysql版本14.14发行版5.1.56,适用于apple-darwin10.3.0(i386),使用 readline 5.1 在经历了很多痛苦之后,我通过以下方式安装了我的sql gem: sudo env ARCHFLAGS=“-arch x86_64”gem安装--无rdoc--无ri mysql--使用mysql配置=/usr/l

我正在尝试从Windows7迁移到MacOSX。 我已经安装了以下程序

  • ruby 1.8.7(2009-06-12补丁级别174)[通用-达尔文10.0]
  • mysql版本14.14发行版5.1.56,适用于apple-darwin10.3.0(i386),使用 readline 5.1
  • 在经历了很多痛苦之后,我通过以下方式安装了我的sql gem: sudo env ARCHFLAGS=“-arch x86_64”gem安装--无rdoc--无ri mysql--使用mysql配置=/usr/local/mysql/bin/mysql_配置

    但当我在netbeans中运行我的项目时,仍然会出现以下错误

    [4;36;1用户列(31.5毫秒)[0米
    [0;1显示
    用户的字段
    [0m
    [4;35;1mSQL(1.2ms)[0m[0m显示 表[0m/!\FAILSAFE/!\Wed可能 04 09:53:16+0530 2011状态:500 未定义内部服务器错误 方法“where”用于

    谁能告诉我我做错了什么


    数据库迁移工作得很好。

    不幸的是,您花了这么长时间安装MySQL gem,但是如果您从零开始将其加载到一台缺少开发头、编译扩展所需的某些内容的机器上,并且您的路径不包括
    /usr/local/MySQL/bin,那么这可能会很复杂这是常见的

    您可以通过创建一个文件
    /etc/path.d/mysql
    来解决这个问题,该文件包含以下内容:

    /usr/local/mysql/bin
    
    一般情况下,您只需在
    Gemfile
    中列出
    mysql
    ,然后使用
    bundle-install
    进行常规安装


    至于错误,它看起来像是你的应用程序中更深层次的东西在破坏一个垫圈。当你说“在netbeans中运行你的项目,”但是你的意思是运行单元测试吗?看起来你在对不支持它的东西调用
    where

    这看起来像是一个应用程序错误。当服务器无法评估方法“where”(代码中可能的某个地方)时,它正在使用500退出

    现代Mac操作系统(忘记哪一个是第一个)预装了ruby和rails——不确定这是否与您的设置有关

    当你跑步时会发生什么

    rails server
    

    从控制台(从应用程序目录中)?

    您在即将告诉您错误发生位置时停止复制堆栈跟踪。请在堆栈跟踪中查找应用程序中的任何代码(与gems或供应商文件夹相反)它应该会指向问题行。

    其中
    是用于条件的ActiveRecord 3 AREL类方法

    首先,你是否安装了XCode?这是安装任何原生gems的先决条件。你可以从苹果网站下载XCode 3或从应用商店购买XCode 4

    需要更多的堆栈跟踪


    理想的情况是,一旦你安装了XCode,你应该看看——这是在Unixy系统上管理rubies的首选方法。

    谢谢各位。我终于发现错误出在authlogic gem上 我安装了3.0.2
    该应用程序需要一个旧版本2.x,它会生成一个新项目。因为我仍然在使用rails 2.3.5