ruby on railst添加照片,翻译,美化界面及用户注册

1.给表添加选择照片功能:

a.gemfile文件添加依赖:(github 搜paperclip里面有)

gem "paperclip"

b.终端输入bundle安装

rails_admin的github里面wiki找到paperclip里面复制这句话

c.rails generate paperclip 表名 asset(这里是student)

d.在app->model->找到要添加的表

ruby on railst添加照片,翻译,美化界面及用户注册_第1张图片

输入:(只需要输入class到end之间的代码也就是has到1})

class Product < ActiveRecord::Base
  has_attached_file :asset,
    :styles => {
      :thumb => "100x100#",
      :small  => "150x150>",
      :medium => "200x200" }
  validates_attachment_content_type :asset, :content_type => /\Aimage\/.*\Z/
  # add a delete_ method: 
  attr_accessor :delete_asset
  before_validation { self.asset.clear if self.delete_asset == '1' }
end

输入rake db:migrate生效,会出现报错:

ruby on railst添加照片,翻译,美化界面及用户注册_第2张图片

这是因为Migration[4.2]版本问题,将

在db->migrate找到刚刚生成的添加图片的操作:

ruby on railst添加照片,翻译,美化界面及用户注册_第3张图片

需要在Migration后面标注版本即改为Migration[5.1]

rake db:migrate

重启服务器 rails s;

打开student表:

ruby on railst添加照片,翻译,美化界面及用户注册_第4张图片

添加图片功能已经添加进去。

2.翻译数据库:

这里默认都是英文版,给用户体验很不好,我们需要将其翻译成中文:

同样在wiki里面找到第七项Translations

打开config->locales:创建下面对应的文件:

1.rails_admin.zh-CN.yml:

rails_admin.zh-CN.yml

将链接里面代码复制进去

2.zh-CN.yml:

zh-CN.yml

3.config下面的application.rb里面加代码:

ruby on railst添加照片,翻译,美化界面及用户注册_第5张图片

  config.load_defaults 5.1
    config.load_defaults 5.1
        config.i18n.load_path += Dir[Rails.root.join('my', 'locales', '*.{rb,yml}').to_s]
        config.i18n.default_locale = :'zh-CN'

重启rails s;
效果:

ruby on railst添加照片,翻译,美化界面及用户注册_第6张图片

很明显,里面的自己定义的属性还是英文。

在zh-CN.yml文件里面添加代码:

ruby on railst添加照片,翻译,美化界面及用户注册_第7张图片

在activerecord:里面加models和attributes修改对应的表名和属性。

注意 冒号和引号之间需要空格,不然表名和属性关键字识别不了。

3.美化界面(添加树级关系)

这里由于只建了两个表 ,只是为了展示效果,多个表更明显。

在config->initializers里面的rails_admin.rb添加代码:

ruby on railst添加照片,翻译,美化界面及用户注册_第8张图片

这里给表名上面添加一行信息,加标签。

config.model 'Tclass' do
    navigation_label '班级管理'
  end

这里为了显示父子关系,多建几个表。

ruby on railst添加照片,翻译,美化界面及用户注册_第9张图片

注意这里表名单词开头必须大写,中间没有其他字符。

然后rails s

ruby on railst添加照片,翻译,美化界面及用户注册_第10张图片

上面的班级学生管理 后台管理是在rails_admin.rb一开始加一句代码:

ruby on railst添加照片,翻译,美化界面及用户注册_第11张图片

config.main_app_name = ["班级学生管理", "后台管理"]

4.用户注册

进入数据库系统需要登录信息才可以进入。

这里用到了devise需要添加依赖:

gem 'devise'

然后终端输入bundle安装。

接着输入:

rails generate devise:install

ruby on railst添加照片,翻译,美化界面及用户注册_第12张图片

这里有4个选项,我们可能会用到的是第四个views 界面设计,所以这里选择第四个

rails g devise:views

然后输入:

rails generate devise admin

输入代码:

ruby on railst添加照片,翻译,美化界面及用户注册_第13张图片

同样在rails_admin.rb里面添加上面两句话:

config.authenticate_with do
   warden.authenticate! scope: :admin
 end
 config.current_user_method(&:current_admin)

ruby on railst添加照片,翻译,美化界面及用户注册_第14张图片

routes.rb里面添加admin:

这里写图片描述

devise_for :admins

你可能感兴趣的:(ruby,github,rails,用户,denglu)