`

初次在Rails项目中使用PostgreSQL,纪录一些简单的步骤

阅读更多
一、安装PostgreSQL
Ubuntu 下可以用 apt-get 来安装
sudo apt-get install postgresql postgresql-contrib

Mac OS X 10.9.1 使用 Homebrew 安装
brew install postgresql


二、修改 config/database.yml
把 host: localhost 这一行的注释打开

三、创建数据库角色
1. 使用 psql 客户端连接到数据库postgres
  Mac下会默认创建当前用户的同名role:
psql postgres

  Ubuntu下要先使用默认创建的 postgres 用户登录:
$ sudo -u postgres psql postgres

2. 创建一个名为 my_app_role 的角色
postgres=# CREATE ROLE my_app_role LOGIN INHERIT;
CREATE ROLE
postgres=# ALTER USER my_app_role CREATEDB;
ALTER ROLE
postgres=# ALTER USER my_app_role WITH PASSWORD 'mypassword';
ALTER ROLE


四、创建数据库
$ rake db:create


五、如果使用 hstore
1. 以 superuser 身份登录 psql 执行以下命令:
postgres=# \c 数据库名
postgres=# CREATE EXTENSION IF NOT EXISTS "hstore";
CREATE EXTENSION

2. 在Gemfile中增加
gem 'activerecord-postgres-hstore'


-------------------
常用命令:
\h    SQL帮助
\?     PostgreSQL帮助
\l     查看数据库列表
\dg  查看角色列表
\c    切换数据库
\dx  查看当前数据库安装的 extensions
\q    退出
分享到:
评论

相关推荐

    Rails项目源代码

    这个“Rails项目源代码”是一个使用Rails构建的图片分享网站的完整源代码,它揭示了如何利用Rails的强大功能来创建一个允许用户上传、分享和浏览图片的应用。 1. **Rails框架基础**: Rails的核心理念是DRY(Don't...

    rails 项目起步示例

    在Rails项目中,我们首先需要了解的是项目的目录结构。一个标准的Rails应用会包含以下关键部分: 1. **app**:应用程序的核心,包括模型(models)、视图(views)和控制器(controllers)。模型负责业务逻辑和数据...

    在rails中 使用RSpec生产CHM文档

    标题 "在Rails中使用RSpec生产CHM文档" 暗示了这个话题是关于如何在Ruby on Rails(简称Rails)框架中使用RSpec测试工具来创建帮助文档,特别是以CHM(Microsoft Compiled HTML Help)格式。CHM文件是一种常见的...

    rails中使用javascript日期控件

    这篇博文“rails中使用javascript日期控件”探讨了如何在Rails应用中集成和使用JavaScript日期选择器,以实现更高效、友好的前端交互。 首先,我们需要了解JavaScript日期控件的基本概念。JavaScript是一种在客户端...

    使用Aptana+Rails开发Rails Web应用(中文)

    为了运行和测试应用,你需要在命令行中使用Rails服务器。在Aptana中,可以使用内置的终端工具。打开“Terminal”视图,输入`rails server`启动服务器,然后在浏览器中访问`http://localhost:3000`查看你的应用。 在...

    windows下配置netbeans开发rails

    在Windows环境下,使用NetBeans进行Rails开发需要一系列的配置步骤,因为Rails是一个基于Ruby的Web框架,而NetBeans是一款强大的集成开发环境(IDE),支持多种编程语言,包括Ruby。以下是一些关键知识点: 1. **...

    在Rails中使用SSL

    以下是关于在Rails中使用SSL的一些关键知识点: 1. **配置Rails应用**:在`config/application.rb`或`config/environments/production.rb`文件中,添加`config.force_ssl = true`来强制所有HTTP请求重定向到HTTPS。...

    rails项目必备组件

    在给定的文件"red_gem"中,可能是一个Rails项目中使用的Gem(Ruby的扩展库)。Gem文件通常包含项目的依赖,例如上述提到的一些组件。通过安装和配置这些Gem,可以极大地提升Rails开发的效率和质量。为了具体了解"red...

    rails 的安装

    "rails_gems" 这个文件名可能指的是Rails项目中使用的Gem包。在`Gemfile`中,你可以列出项目所需的所有外部库或服务,然后通过运行 `bundle install` 来安装它们。这将确保所有依赖都处于正确的版本并能正常工作。 ...

    rails的经典学习项目

    在学习Rails的过程中,开发者会接触到许多关键概念和技术,如ActiveRecord(Ruby on Rails的数据持久化层),它允许开发者通过简单的Ruby代码操作数据库; erb或haml模板语言,用于构建动态HTML视图;以及RSpec或...

    Ruby-GoOnRails使用Rails生成器来生成一个Golang应用

    这个工具简化了在Rails项目中使用Go进行后端处理的流程,使开发者可以利用Go的性能优势处理高并发请求,同时保留Rails的便捷开发体验。 ### 2. 安装`GoOnRails` 首先,确保你的系统已经安装了Rails和Go。接下来,...

    教学级Ruby On Rails 手动安装.pdf

    - 配置数据库连接信息,通常在Rails项目的`config/database.yml`文件中设定。 6. **NetBeans IDE安装**(可选): - 下载并安装NetBeans IDE,创建新项目时选择Ruby on Rails模板,可自动导入必要的Rails环境。 ...

    Rails3 使用rake启动后台任务

    以下是一些关于如何在 Rails3 中使用 rake 启动后台任务的知识点: 1. **Rakefile**: 每个 Rails 项目都有一个 Rakefile 文件,这是 Rake 执行任务的入口点。在这个文件中,你可以定义自定义的任务。 2. **Task ...

    中文版rails教程

    在Rails开发中,通常遵循以下步骤: 1. **生成资源(Generating Resources)**:使用`rails generate`命令可以快速创建模型、控制器、视图等文件,如`rails generate scaffold Post title:string content:text`会...

    关于rails 3.1 cucumber-rails 1.2.0

    在 Rails 应用中使用 Cucumber-Rails,开发者可以创建一个名为`features`的目录,里面包含这些Gherkin特性文件。每个特性文件描述了一个或多个业务场景,并使用关键字`Given`、`When`、`Then`等来定义步骤。这些步骤...

    Ruby_On_Rails笔记

    综上所述,Ruby on Rails的笔记内容涵盖了从安装Rails环境到创建和运行一个简单的Rails项目的基础知识,这些内容对于初学者来说是学习Rails框架的极好入门材料。通过对这些知识点的学习,初学者可以快速了解Rails的...

    重构你的Rails程式码

    通过遵循上述步骤,您可以确保在升级Rails的过程中充分利用这个机会进行有效的重构。记住,重构不是一次性任务,而是一个持续的过程,随着项目的不断发展,定期进行重构是非常必要的。希望这篇文章能为您的Rails项目...

    Rails 中mongrel的安装

    在Rails项目中安装Mongrel通常通过RubyGems进行,这是一个Ruby的包管理器。首先确保RubyGems已经安装,然后在命令行执行以下命令: ```bash gem install mongrel ``` 安装完成后,可以通过`mongrel_rails`命令来...

    ruby on rails 开发环境包(ruby1.8.7,rails2.2.3)

    在使用这个开发环境包时,开发者可以开始构建基于Rails的Web应用,遵循以下步骤: 1. **安装Ruby**:首先,你需要在你的系统上安装Ruby 1.8.7。这可以通过Ruby版本管理器如RVM(Ruby Version Manager)或者rbenv来...

Global site tag (gtag.js) - Google Analytics