最近开始弄这个Rails,费了一些心里才完成Rails的环境搭建,OK,现在开始按照Rails Guides编写第一个测试的小程序,Blog程序。
开始在终端输入一下命令:
1 | rails new blog -d mysql |
很无奈的报错了,看到命令行输出一串串的字符,在bundle install的时候输出提示,有一个https什么的,我一猜想,估计是伟大的党国有墙了,没办法进入blog目录,修改 Gemfile。将source修改为淘宝的gem镜像,再次手动运行
1 | bundle install |
这次成功了,运行的很流畅,没有任何问题。检查一下自己的数据库已经启动没问题,好的。现在修改 ./config/database.yml文件,将数据库的连接文件的帐号,密码设置正确。(我的root账户应为想到的开发环境就设置的比较简单123,这就出现了我在上一边环境安装过程中提醒大家最好使用字母加数字或者字母的原因)。命令行执行
1 2 3 4 | $ rake db:create - v rake aborted! Could not find a JavaScript runtime. See https: //github .com /sstephenson/execjs for a list of available runtimes. (See full trace by running task with --trace) |
如上的问题让我首先很是无奈,Could not find a JavaScript runtime---这是为什么啦,我才开始就说需要javascript了,太神奇了。谷哥了一把(度娘再次失望的没有找到解决办法),需要在Gemfi中添加
1 | gem 'therubyracer' |
添加成功后再次运行 bundle install命令,发现gem会帮你自动安装一个javascript的东东。再次运行
1 2 3 4 5 | $ rake db:create - v rake aborted! can't convert Fixnum into String Tasks: TOP => db:create (See full trace by running task with --trace) |
发现命令报错是不是不一样了。但是还是悲催的报错了。但是看看报错提示can't convert Fixnum into String ,这是为什么了啦。想了好久好久,在看看了好久的./config/database.yml文件终于突然想到是密码的问题了,应为我的密码设置的是123。在这两天看书web敏捷开发之道的时候看到关于YAML的介绍的时候提及了一下。我感觉到可能是YAML在阅读我的database的配置文件的时候默认的将123作为了一个num类型的数据,修改./config/database.yml将密码123打上双引号,强制的将num转换成为字符串,在再次执行rake db:create -v就没有任何问题了。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 单线程的Redis速度为什么快?
· 展开说说关于C#中ORM框架的用法!
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?