一、开始ActiveAdmin

Active Admin是一个发布在RAILS3中使用的Gem。
1、我们为了快速开始我们对Active Admin的了解,我们首先安装它:
在你GemFile中添加gem 'activeadmin'
2、更新你的Gem
bundle install
3、运行installer
rails generate active_admin:install
4、安装的installer会创建一个initializer,这个initializer采用Active Admin默认的配置,把所有需要的配置都写进一个文件夹app/admin里面。

同时,这个时候会显示相关的配置信息,并按照配置信息完成相关指示操作。



Some setup you must do manually if you haven't yet:

1. Ensure you have defined default url options
in your environments files. Here
    
is an example of default_url_options appropriate for a development
environment
    
in config/environments/development.rb:

config.action_mailer.default_url_options = { :host
=> 'localhost:3000' }

In production, :host should be set to the actual host of your
application.

2. Ensure you have defined root_url to
*something* in your config/routes.rb.
    
For example:

root :to => "home#index"

3. Ensure you have flash messages in
app/views/layouts/application.html.erb.
    
For example:

<p class="notice"><%=
notice %></p>
      
<p class="alert"><%=
alert %></p>

4. If you are deploying Rails 3.1+ on Heroku,
you may want to set:

config.assets.initialize_on_precompile = false

On config/application.rb forcing your application to not access the
DB
    
or load models when precompiling your assets.

5. You can copy Devise views (for customization)
to your app by running:

rails g devise:views


完成以上操作,我们还需要配置邮件服务器
编辑config/initializers/devise.rb

  #
Configure the e-mail address which will be shown in
DeviseMailer.
  config.mailer_sender
=
"xxx@126.com"  
#换成你的邮箱,最好不要是gmail

编辑config/environments/development.rb
 # Don't care if the mailer
can't send

  config.action_mailer.raise_delivery_errors
=
true 
#此处改为true
  config.action_mailer.default_url_options
= {
:host =>
"localhost:3000" }
#刚才devise的提示中提到这一句
  config.action_mailer.delivery_method
=
:smtp
  config.action_mailer.smtp_settings
= {
    :address=>
"smtp.126.com",
    :port=>
25,
    :domain=>
"126.com",
    :authentication=>
:login,
    :user_name=>
"xxx@126.com",#你的邮箱
    :password=>
"xxxxxx" #你的密码
  }

5、迁移你的db ,rake
db:migrate,然后运行rails server 。

6、然后打开浏览器,输入 localhost:3000/admin 进行访问。
用户名: admin@example.com
密码:password
7、添加你的model
rails g
model  [MyModelName]  name:string
title:string content:text
8、将model放到admin目录中去 
rails
generate active_admin:resource [MyModelName]
这个命令会创建一个文件app/admin/my_model_names.rbl来配置你的resource。
刷新你的浏览器,看看这个时候的界面是怎么样的。
二、ActiveAdmin更新
你可以键入如下命令进行对它的升级
rails generate active_admin:assets
如果提示:uninitialized constant Admin::DashboardController
这个时候,需要dashboard view(app/admin/dashboards.rb)和初始化的时候一样。
三、下一步
1、最好得到的阅读文档的地方:activeadmin.info/documentation.html.
2、AcitiveAdmin 的示例网址:demo.activeadmin.info
3、如果有问题,在这个网站的邮箱列表(groups.google.com/group/activeadmin)中发邮件。
四、补充说明
1、我在实际安装过程中,安装了很多的东西,这里我把安装过程中的gem一并写下来,就按gemfile里写的格式写下来。
gem
'activeadmin','0.5.1'
gem
'arbre','1.0.1'
gem
'bourbon','1.0.0'
gem
'devise','1.5.4'
gem
'formtastic','2.1.0'
gem
'has_scope','0.5.1'
gem
'inherited_resources','1.3.1'
gem
'meta_search','1.1.3'
gem
'orm_adapter','0.0.3'
gem
'polyamorous','0.5.0'
gem
'responders','0.6.5'
gem
'warden','1.1.1'
2、install过后,截图纪念一下

五、完成安装过后,又开始我们的下一个旅程——订制自己的后台。
1、给menu,index页面,form页面还有filter和help添加一些内容和中文命名
ActiveAdmin.register Post
 do 
  menu :label => "文章管理"
    index
 do  
    column "标题",:title
     
     
     
    column "作者",:name
     
    column "内容",:content
     
     
    
    default_actions
   
  end    
   
  
  filter :title
,:label=>"标题"
  filter :name
,:label=>"作者"
  filter :content
,:label=>"内容"
  
  form do |f|
    f.inputs "添加标题和作者"
do
     
f.input :title,:label=>"标题"
     
f.input :name,:label=>"作者"
    end
    f.inputs "添加内容" do
     
f.input :content,:label=>"文章内容"
    end
    f.buttons
  end
  
  sidebar :help,:only =>
:index do
 
"如果你对网站后台管理有问题,请联系CreateByRails@yeah.net"
  end
 
end
 
六、汉化页面

1、现在将整个页面汉化一下

首先,我们已经在config/application.rb里配置了local为
zh-CN,

# The
default locale is :en and all translations from
config/locales/*.rb,yml are auto loaded.
    
config.i18n.load_path += Dir[Rails.root.join('config', 'locales',
'*.{rb,yml}').to_s]
    
config.i18n.default_locale = "zh-CN"

然后到http://github.com/tsechingho/rails-i18n/blob/master/rails/locale/zh-CN.yml

下载已经配置好的中文包到config/locales里,这样,rails的中文化已经做好了。

2、devise的汉化

到该Wiki去下载汉化包
devise.zh-CN.yml

https://github.com/plataformatec/devise/wiki/I18n

然后删除原来的devise.en.yml

3、解决编码问题

在你需要显示汉语的*.rb文件中 ,添加一句代码

#encoding:utf-8

学习Rails之activeAdmin的更多相关文章

  1. Rails中activeAdmin的使用

    一.开始ActiveAdmin Active Admin是一个发布在RAILS3中使用的Gem. 1.我们为了快速开始我们对Active Admin的了解,我们首先安装它: 在你GemFile中添加g ...

  2. 开始了大概三四天的Rails学习之路

    最近因为一位极光推送朋友,我开始了大概三四天的Rails学习之路,最终达到的水平是可以比较轻松地做出大部分功能,然后自我感觉可以自如地按照Rails的设计思想去思考.由于编程的日益流行,我结识了越来越 ...

  3. [Rails学习之路]初识Ruby(一)

    Ruby是一门动态的.强类型的.纯面向对象的编程语言.它和Python非常相似,但比Python面向对象更加彻底.使用更加灵活.语法更加复杂.也更为有趣. 抛开做事情到底应该有多少种方法这个问题,我相 ...

  4. Rails中的缓存

    最近学习Rails. 看到如下代码: <% if notice %> <p id="notice"><%= notice %></p> ...

  5. Ruby学习资源汇总

    from:http://segmentfault.com/a/1190000000362058 Ruby 语言 Try Ruby: 无需在你的系统中安装.Ruby,只要通过浏览器便可立即体验 Ruby ...

  6. 【转】如何从零开始学会 Ruby on Rails?

    文章转自:http://huacnlee.com/blog/how-to-start-learning-ruby-on-rails/ 这个话题曾经给身边的很多朋友说过同样的话题,这里整理以下. 如果你 ...

  7. 如何从 0 开始学 ruby on rails (漫步版)

    如何从 0 开始学 ruby on rails (漫步版) ruby 是一门编程语言,ruby on rails 是 ruby 的一个 web 框架,简称 rails. 有很多人对  rails 感兴 ...

  8. 有意练习--Rails RESTful(一)

    书要反复提及<哪里有天才>在说,大多数所谓的天才是通过反复刻意练习获得. 当你的练习时间达到10000几个小时后,.你将成为该领域的专家. 近期在学习rails怎样实现RESTful We ...

  9. 如何从 0 开始学 Ruby on Rails

    如何从 0 开始学 Ruby on Rails (漫步版)Ruby 是一门编程语言,Ruby on Rails 是 Ruby 的一个 web 框架,简称 Rails. 有很多人对 Rails 感兴趣, ...

随机推荐

  1. 在SharePoint列表中使用动态筛选条件[今日][Today]

    如果在SharePoint使用了日历控件或者其他列表中有时间字段,用户经常希望能够动态使用条件字段进行筛选,例如希望筛选出开始日期是今天的事件.未来三日的事件. SharePoint的列表筛选条件支持 ...

  2. shell查找进程并终止

    创建kill.sh文件,内容如下: port= #一.根据端口号查询对应的pid,两种都行 pid=$(netstat -nlp | grep :$port | awk '{print $7}' | ...

  3. 窗口间传送数据wsprintf,WM_SETTEXT,SendMessage的理解

    对wsprintf  API函数的理解: int wsprintf ( LPTSTR lpOut, // pointer to buffer for output  LPCTSTR lpFmt, // ...

  4. 八.linux系统文件属性知识

    1.文件属性权限是12位,现在只看9位,其中每3个一组,为:属主权限.属组权限.其他权限,其中r可读,w可写,x可执行,如图: 2.文件属性之软硬链接   linux系统中有两种链接,为硬链接(ln) ...

  5. “全栈2019”Java多线程第十章:Thread.State线程状态详解

    难度 初级 学习时间 10分钟 适合人群 零基础 开发语言 Java 开发环境 JDK v11 IntelliJ IDEA v2018.3 文章原文链接 "全栈2019"Java多 ...

  6. 动态代理(CGLIB实现)

    CGLIB(Code Generation Library)是一个开源项目.可以直接对类进行增强,而不需要像JDK的动态代理,需要增强的类必须实现某接口 在使用Spring框架时,因为Spring框架 ...

  7. sql语句中group by使用

    group by分组函数,group by name 将查询结果按照name进行分组,相同name的记录一组,配合聚合函数,显示每个name的情况.   1,数据源 表A结构如下: CREATE TA ...

  8. php全局变量漏洞 $GLOBALS

    在Discuz代码中有这么一段: if (isset($_REQUEST[‘GLOBALS’]) OR isset($_FILES[‘GLOBALS’])) {  exit(‘Request tain ...

  9. mysql 添加索引 mysql 如何创建索引

    1.添加PRIMARY KEY(主键索引) mysql>ALTER TABLE `table_name` ADD PRIMARY KEY ( `column` ) 2.添加UNIQUE(唯一索引 ...

  10. Servlet入门实践

    本文主要介绍servlet,包括入门到升入,基本上可以对servlet有一个很好的认识: 1servlet介绍:   Servlet(Server Applet),全称Java Servlet,未有中 ...