Lydia's blog

Every day to be a little better


  • Home

  • Archives

  • Search

添加多张图片

Posted on 2017-02-06 12:28

1.rails g uploader avatar

avatar_uploader.rb
1
2
3
4
5
6
7
8
9
将 include carrierwave::minimagick 前面的#去掉
在store_dir end 下加
process resize_to_fit:[800,800]
version :thumb do
process resize_to_fit:[200,200]
end
version :medium do
process resize_to_fit:[400,400]
end

2.建立photo.rb model文件:
$ rails g model xxx xxxx:xxx avatar:string
自然建立migration文件

3.在需要添加图片的model文件中加上

1
2
has_many :photos
accepts_nested_attributes_for :photos
photo.rb
1
2
mount_uploader :avatar, AvatarUploader
belongs_to :case

4.在需要添加图片的controller文件中加上
def new下面加
@photo = @xxx.photos.build

def create中if @xxx.save下面加

1
2
3
4
5
if params[:photos] != nil
params[:photos]['avatar'].each do |a|
@photo = @xxx.photos.create(:avatar => a)
end
end

def show 下面加

1
2
3
@photos = @xxx.photos.all
```
在def update变成

def update
if params[:photos] != nil
@case.photos.destroy_all #将原来的图片删掉
[:photos][‘avatar’].each do |a|
@photo = @case.photos.create(:avatar => a)
end
@case.update(case_params)
redirect_to cases_path
elsif
@case.update(case_params)
redirect_to cases_path
else
render :edit
end
end

1
2

5.在new页面添加

<%= f.label :avatar %>
<%= f.file_field :avatar, :multiple => true,name:”photos[avatar][]” %>

1
在show页面添加
<% if @photos.present? %> @xxx.photos.each do |photo| %> <%= image_tag photo.avatar.url(:thumb) %> <% end %> <% else %> 暂无图片 <% end %>
``` ps:一个xxx对应多个photo 一个photo对应一个avatar 这种时候要显示avatar就需要对于@xxx.photos这个数组进行遍历来实现

rails-容易错的地方

Posted on 2017-02-04 18:16

1.关键字不可以做变量名!!!
会报语法错误
eg:case collection

2.在model文件相关联的时候
如果关联到同一张表但是用不同的外键时要在后面标明
eg:
belongs_to :she_ji_shi, :class_name => SheJiShi, :foreign_key => ‘she_ji_shi_id’

3.除了rails以外其余的语言方法名之后都要加()
4.||= 默认值
rescue 是抛出异常时给赋的值

css 基本样式&h5程序运行

Posted on 2017-01-24 22:32

1.width/height只有在display: inline-block;下才生效
2.按钮变成椭圆形:border-radius:
3.将图片放在左边:position: absolute;
left: 80px;
4.设置整个页面背景:
只有将最外侧标签写成body,height才会生效
5.改变表格边的样式:
Value Description
void The outside borders are not shown
above The top outside border is shown
below The bottom outside border is shown
hsides The top and bottom outside borders are shown
vsides The left and right outside borders are shown
lhs The left outside border is shown
rhs The right outside border is shown
box The outside borders are shown on all four sides
border The outside borders are shown on all four sides

6.改变字体:

值 描述
normal 默认值。浏览器显示一个标准的字体样式。
italic 浏览器会显示一个斜体的字体样式。
oblique 浏览器会显示一个倾斜的字体样式。
inherit 规定应该从父元素继承字体样式

改变字体为苹方:font-family: PingFangSC-Regular, sans-serif;

7.字体加粗:关键字 100 ~ 900 为字体指定了 9 级加粗度。如果一个字体内置了这些加粗级别,那么这些数字就直接映射到预 定义的级别,100 对应最细的字体变形,900 对应最粗的字体变形。数字 400 等价于 normal,而 700 等价于 bold。
font-weight:900;

8.将模块放在边侧,可用float,调整位置用margin-left/margin-right
9.padding/margin 顺序为上右下左,中间不用,隔开
10.position:relative 时,如果top:-50% 不生效就用px来定位
或者给父类加上height
11.设置背景透明度:opacity:x(0-1)
eg: 0.8
12.添加背景图片: background-image:url()

ps:运行h5程序 source ~/.bash_profile
npm run dev

clone下来的代码配置运行

Posted on 2017-01-22 16:42

1.$ cd config $ cp log4r.yml.example log4r.yml $ cp settings.yml.example settings.yml $ cp database.yml.example database.yml

2.在项目根目录中mkdir log

3.vim database.yml,把password写进去,将socket那一行删掉。

4.$ bundle exec rake db:create

5.用script文件下的init文件来初始化数据库
eg: bundle exec ruby script/init_user.rb

6.$ bundle exec rake db:migrate

  1. cd config –> touch secrets.yml
    填入

development:
secret_key_base: 52eeb9ef4aebcf526c2415a6f3c0d579c7df7de12099a89a8ed834c840b348d999dec774a11a558d89f463b6bcf810d6e8c42849530e8f6f931ed0a5e66b57a4

test:
secret_key_base: 3d768887879e8a78b39213eb90dfd271ac405d369d1de16945d3747a444ab0566842115abfd8b37062136c2a1a77f196aa255a16e47354fc101bac31d65acb6c

Do not keep production secrets in the repository,

instead read values from the environment.

production:
secret_key_base: 680911118945d25bfffe2b69ecb5d332fe9f5494ccae9f06cdc2cc74434babf5f5389d64fe1d2aad4bf9f71534c47f5f5a257affaa49af9fdea1d63314ff1993

ps -ef | grep rails 查看rails进程
ps -ef | grep dev 查看前端进程

terminal&vim 基本命令

Posted on 2017-01-20 14:11

terminal:
返回上级目录: cd..

找到对应的rails运行程序:bundle exec
rm -rf 文件名 强制删除一个文件
cd 切换目录(Change Directory)
cd ~ 会把家目录设成当前目录
ls 这指令会列出当前资料夹里面的档案
ls -a 列出专案中所有档案
pwd 查看你当前所在文件路径

查看硬盘状态
df -kh

在当前目录下,从旧到新的列出所有的文件: (注意参数: trh)
$ ls -altrh

查看当前的系统(CPU, 内存,进程)状态。
$ top

显示出系统中的所有进程,并且以消耗的内存来从低到高的排序。
$ ps aux –sort rss

查看当前服务器的所有分区,并且以用户
$ df -kh

查看当前文件夹的大小
$ du . -kh 查看文件夹大小

查看进程:
ps -ef | grep rails

终止某个进程。 例如: 某个进程的id是3366
$ kill -9 3366

查询:grep ‘user-select’ src -r
grep ‘user-select’ src -r -n —-显示行数
grep login src -R –include=*vue -n —-查找所有.vue文件中有的

查看某个文件的尾部。 例如:
$ tail /var/log/system.log
默认显示文件的最后10行。
可以跟踪显示某个文件的尾部:
$ tail -f /var/log/system.log
可以指定显示该文件的尾部100行:
$ tail -n 100 /var/log/system.log
最常见的用法:跟grep 共同使用, 例如,实时跟踪显示某个文件,只过滤出内容中带有ERROR:
$ tail -f /var/log/system.log | grep ERROR
---------------------------------------------------------

vim:
在vim中打开文件列表: ,+t
在vim中切换分页:ctrl+w+w
切换terminal窗口:shiift+command+{ / }
刷新文件树:shift+r
上下分割当前打开的文件:Ctrl+W s
让所有的屏都有一样的高度:Ctrl+W =
增加高度:Ctrl+W +
减少高度:Ctrl+W -
替换文本:选中之后shift+; s/ 被替换的/要替换的/(g)–全局
在最后加上某个: 全选 –》 : –》s/$/你要加的东西
在最前面加上某个: 全选 –》: –》s//你要加的东西
自动换行:set wrap

Mysql基础

Posted on 2017-01-16 11:30

数据库命令后要加;
数据库对大小写不敏感

退出mysql:exit
第一部分:库
初始进入:mysql -u root
如果有密码要用:mysql -u root -p
设置密码:mysqladmin -u root password xxx
进入:mysql -u root -p
输入密码
创建数据库:create database xxx default charset utf8 collate utf8_general_ci;
查看数据库:show databases;

Read more »

按钮图标添加

Posted on 2017-01-11 19:13

1.安装font-awesome-rails

Gemfile
1
gem "font-awesome-rails"

bundle install

Read more »

rails 5.0

Posted on 2017-01-05 15:31

1.要想将现有的app rails版本升到5.0,要现将版本升到4.2,确认没问题之后在往上升。
从4.2到5.0的时候要在app/models下新增一个文件 application_record.rb

app/models/application_record.rb
1
2
3
Class ApplicationRecord < ActiveRecord: :Base
self.abstract_class = true
end

2.API
rails new my_api –api

view-partial/helper/scope

Posted on 2017-01-02 18:36

Partial
Step 1: 产生一个要调用的partial
eg: app/views/groups/_form.html.erb

touch app/views/groups/_form.html.erb

填入以下内容:

Read more »

记不住的知识点!!!

Posted on 2016-12-26 19:19

1.删除纽 method: :delete
2.限制 validates :xxx(要限制的栏位),presence: true(不为空)
3.要将两个东西关联到一起的话就要在一个中加上另一个的id(用id关联)rails g migration xx,且要在model中添加关系(belongs_to :xxx,optional: true)
migration里add_column :xxxs(在哪个model中加),:xxx(要加的东西),:xxx(类型)

1…25262728

Lydia

This is lydia's blog

277 posts
1 categories
46 tags
© 2020 Lydia
Powered by Hexo
|
Theme — NexT.Muse v5.1.4