Lydia's blog

Every day to be a little better


  • Home

  • Archives

  • Search

rails - 查询自动刷新

Posted on 2017-09-08 15:30

1.在application.js页面添加上

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
function merge_parameter_and_refresh(key, value) {
key = escape(key); value = escape(value);
var kvp = document.location.search.substr(1).split('&');
if (kvp == '') {
document.location.search = '?' + key + '=' + value;
}
else {
var i = kvp.length; var x; while (i--) {
x = kvp[i].split('=');
if (x[0] == key) {
x[1] = value;
kvp[i] = x.join('=');
break;
}
}
if (i < 0) { kvp[kvp.length] = [key, value].join('='); }
//this will reload the page, it's likely better to store this until finished
document.location.search = kvp.join('&');
}
}

2.在view页面:

1
2
3
4
5
<script>
$('#good_goods_first_category_id').change(function(){
merge_parameter_and_refresh('category_id', $(this).val())
})
</script>

category_id 是下拉框的name

js- date 格式化

Posted on 2017-09-06 17:18

Date.toISOString()

rails-拖拽排序

Posted on 2017-09-06 12:46

1.Gemfile 中添加
gem ‘sortable-rails’
$ bundle
2.app/assets/javascripts/application.js 中添加

1
2
//= require sortable-rails-jquery
//= require_tree .

3.确认需要拖拽排序的表中有position字段
4.view

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
<tbody id="steps_sortable_table">
<% @steps.each do |step| %>
<tr data-id = '<%= step.id%>'>
.......
</tr>
<% end %>
</tbody>

<script>
$(' #steps_sortable_table' ).sortable({
opacity: 0.6,
revert: true,
cursor: 'move',
onUpdate: function(evt) {
neworder = new Array();
$('#steps_sortable_table').children().each(function() {
id = $(this).attr("data-id");
neworder.push({
id: id
});
});
$.ajax({
url: "/steps/sort",
type: "POST",
data: {
steps: JSON.stringify(neworder)
}
});
console.log(neworder);
}
});
</script>

controller

1
2
3
4
5
6
7
8
9
10
11
def sort
if params[:steps].present?
JSON.parse(params[:steps]).each_with_index do |x, index|
idx = x["id"]
position = index+1
step = Step.find(idx)
step.update_attribute("position", position)
end
end
render nothing: true
end

三元表达式

Posted on 2017-09-05 18:11

条件 ? 如果是true : 如果是false
例子:
if @good.present?
name = @good.name
else
name= ‘没有物品’
end
可以写成
@good.present? @good.name:’没有物品’

devise--用户名登录

Posted on 2017-08-30 09:59

1.给user表添加user_name字段
$ rails g migration add_user_name_to_user
2.config/initializers/devise.rb中
config.authetication_keys=[:email]改成config.authetication_keys=[:user_name]
3.使devise的登录页面可见(具体参考)
修改登录页面
4.给config/routes.rb中添加

1
resources :users

注意: devise_for :users 一定要在resources :users上面

rbenv

Posted on 2017-08-28 18:04

https://gist.github.com/sandyxu/8aceec7e436a6ab9621f

rails-windows下安装 gem mysql2的大坑

Posted on 2017-08-24 15:17

1.在本地安装好mysql之后
将mysql\lib\libmysql.dll复制到railsInstall中ruby\bin下面
2.gem install mysql2 -v ‘0.3.17’ - - ‘- - with -mysql-dir:”MySQL文件路径 (要到最后一个文件夹 文件夹下直接就是bind这样的文件夹的才行)”‘

rails 事件回滚

Posted on 2017-08-22 10:16

1.在有很多存储操作时,
Model.transaction do
end
这样一报错在这个里面的所有存储事件就都会回滚。可以避免存储很多脏数据

2.如果你想判断什么时候回滚的话
Model.transaction do
if …
else
raise ActiveRecord::Rollback
end
end
redirect_to …
注意:返回路径一定要写在transaction外面 要不然会报missing template的错误

rails create&update action 取某一个params值

Posted on 2017-08-22 10:15

xxx_params[:xxx]

网络打印机安装

Posted on 2017-08-21 16:20

我用的是爱宝打印机 在win10的系统下
1.安装网络打印机驱动
2.要么修改打印机网段(打印机网段一般为1)
ps:网段:192.168.x.xxx 第三位为网段
要么修改局域网网段(一般为0)
ps:修改打印机网段需要客服提供工具 自己很难改
但是修改局域网网段会影响局域网连接外网,所以这里我们还是选择修改打印机网段
3.将电脑的局域网网段先改成1
1)打开网络与共享中心。
2)点击以太网 点击属性 选择TCP/IPv4双击打开 选择使用下面的IP地址
3)输入192.168.1.xxx 确定关闭
(如果是修改局域网网段就这样就可以了)
4.将电脑与打印机网口直连(电脑断网) 用客服提供的工具将打印机网段设置成0
5.将网线连回去 将局域网设置取消
6.给打印机添加端口
1)端口类型选择StandardTCP/IP
2)输入打印机ip地址
3)会显示没有找到设备 但是没关系 点击下面的自定义
协议 –> Raw
端口号 –> 9100
之后确定 下一步 完成就OK了!
7.集成到系统上 客服还没有给我SDK 等他给我集成上之后再更新

1…192021…28

Lydia

This is lydia's blog

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