Ruby on Raisl应用(一):在Rails上配置Mongoid+Mongodb
一、 概述
最近考虑用ruby on rails 搭建一套Blog系统,前端考虑用Bootstrap,数据库用Mongodb.由于之前没有相关应用经验。先记录下整个项目过程。
现有资源:
Mac 笔记本一台;
Rails环境已经搭建好,具体搭建过程可以参考:ruby on rails 指南中文版;
Mongodb已经搭建好,过程参考:https://docs.mongodb.org
本文在此基础上进行mongoid的搭建与配置,并且生成一个基于mongoid的简单项目
二、 创建忽略Active Record 的项目
运行:
rails new BlogProject --skip-active-record
执行后,会自动生成一个名为:BlogProject的项目。
三、修改Gemfile 文件
修改BlogProject项目目录下的Gemfile文件。添加:
gem 'mongoid', '~> 5.1.0'
gem 'bson_ext'
保存后运行:
bundle install
运行后,就可以在项目中应用mongoid了。
四、测试Mongoid是否能正常运行
生成一个简单的Blog页面添加、修改、删除功能
rails generate scaffold BlogArticle name:string --orm=mongoid
--orm=mongoid 是设置orm应用 mongoid
如果需要统一设置可以在config目录下application.rb中添加:
config.generators do |g|
g.orm :mongoid
end
运行后访问http://127.0.0.1/3000 可以看到效果:
添加一条记录,然后保存
我们进入Mongodb查询,可以看到mongoid正常运行了
p.s. 图片一会添加。。好久没用感觉blog图片添加好麻烦。。
Ruby on Raisl应用(一):在Rails上配置Mongoid+Mongodb的更多相关文章
- 【GitHub】在Mac上配置/使用Github
以前一直听说过Github,但是自己一直不会用.最近不是太忙,于是想捣鼓捣鼓Github,没想到用了将近3个小时,才在Mac上配置成功. 首先简单介绍一下Git和Github 集中化的版本控制系统( ...
- CentOS 5 上配置 Redmine 和 Git
现在我们用 Trac + Git 来管理所有的项目,早些时候是由 Trac + Subversion 管理的,和 Git 比较起来 Subversion 简直就是龟速.虽然我们前段时间换成了 Git ...
- MongoDb进阶实践之二 如何在Windows上配置MongoDB
一.引言 上一篇文章,我介绍了如何在Linux系统上安装和配置MongoDB,其实都不是很难,不需要安装和编译,省去了Make && Make Install 命 ...
- 在Mac系统上配置Android真机调试环境
在Mac系统上配置Android真机调试环境 mac上配置安卓环境还说挺方便的,真机调试也比win上要好一些.win上被各种软件强行安装了xxx助手. 在mac上就了一个干净的感觉. 下载Androi ...
- 在 Linux 上配置一个 syslog 服务器
syslog服务器可以用作一个网络中的日志监控中心,所有能够通过网络来发送日志的设施(包含了Linux或Windows服务器,路由器,交换机以及其他主机)都可以把日志发送给它. 通过设置一个syslo ...
- 在Mac上配置adb命令
在Mac上配置adb命令 在Mac OS中使用adb命令时,应进行变量配置,步骤如下: 一.终端中输入 cd ~ 二.输入touch .bash_profile 回车 touch:如果没有,则创建文件 ...
- 在Linux上配置xampp后远程访问域名报错
在Linux上配置xampp后远程访问域名报错: New XAMPP security concept: Access to the requested object is only availabl ...
- 在同一台服务器上配置多个Tomcat
如果要在一台服务器上配置多个Tomcat,主要就是要避免Tomcat服务器的端口冲突的问题.只需要修改CATALINA_HOME\conf\server.xml中的启动端口和连接端口就OK了! 下面我 ...
- IIS7.5 在已有的WEB网站上配置FTP发布
IIS7.5 有了很多新特性,例如FashCGI,Rewrite 模块的内置,简易的FTP发布等等,但是即使是微软,也没有详细的文档,本文详细的介绍了如何在现有的WEB网站上建立FTP发布. IIS ...
随机推荐
- 【M33】将非尾端类设计为抽象类
1.考虑下面的需求,软件处理动物,Cat与Dog需要特殊处理,因此,设计Cat和Dog继承Animal.Animal有copy赋值(不是虚方法),Cat和Dog也有copy赋值.考虑下面的情况: Ca ...
- jquery实现页面局部刷新
后台管理中总是使用frameset进行分成部分进行管理,但是感觉很不好用,尤其是页面间调转还要判断window.parent,太令我费神了,于是学习使用XMLHttpRequest进行页面局部刷新.代 ...
- SaundProgressBar
https://github.com/eltld/SaundProgressBar
- 【JavaScript】关于prototype
所有的对象都有constructor属性 但是只有function类型才有prototype属性----->值是一个对象,即prototype对象,所有的实例对象共享同一个prototype对象 ...
- TP函数
U方法用于完成对URL地址的组装,特点在于可以自动根据当前的URL模式和设置生成对应的URL地址,格式为:U('地址','参数','伪静态','是否跳转','显示域名');在模板中使用U方法而不是固定 ...
- TP复习5
## ThinkPHP 3.1.2 查询方式#讲师:赵桐正微博:http://weibo.com/zhaotongzheng 本节课大纲:一.普通查询方式 a.字符串 $arr=$m->wher ...
- [Angular 2] Style Angular 2 Components
Each Angular 2 Component can have its own styles which will remained contained inside the component. ...
- [Express] Level 5: Route Instance -- refactor the code
Route Instance Let's rewrite our cities routes using a Route Instance. Create a new Route Instance f ...
- IO 延迟与Queue Depth
IO 延迟:存储设备的IO延迟 Queue Depth:磁盘控制器所发出的批量指令的最大条数 IOPS:磁盘设备每秒的IO 三者之间的关系:IOPS=(Queue Depth)/(IO latenc ...
- 显式参数 VS 隐式参数
尽量使用显示参数,而不是隐式参数,看下面实例代码. 示例1采用显示参数,示例2采用隐式参数.对于一个不熟悉MonitorManager内部构造的调用者来说,在构造MonitorManager的时候,对 ...