比如搜索路径名含有“active”的,并且内容中含有“doesn't match”的ruby文件:
find . | ag 'active' | xargs ag "doesn't match" --ruby
原需求是在rails框架源代码中搜索“doesn't match”,但是在gems目录下不止rails框架,还是其他gem,而只有rails框架的文件路径中含有“active”,所以就用上面的管道先把rails框架中的文件过滤出来,再从这些文件中搜索关键词
比如User模型,则用:
User.validators
其实Virtualbox对鼠标和触摸板是有优化的,这就导致,如果你用的是鼠标,Virtualbox却向触摸板方向优化,当然会导致鼠标不太好使,解决办法如下:
打开设置 - 系统,指点设备选择 “PS/2 鼠标”
vscode总让人感觉不像软件像网页,很大一方面原因是鼠标移动到标签等位置的时候,鼠标变成手形,类似网页中鼠标移动到链接上的形状,可以把它改成指针的形状。方法如下:
打开 Microsoft VS Code\resources\app\out\vs\workbench\workbench.desktop.main.css 文件,把所有的“cursor:pointer”替换为“cursor:default”
在rails开发中,有时候修改了assets里的静态文件名不生效,可能是Sprockets缓存的问题,可以用下面的命令清空:
rake tmp:cache:clear
然后再运行 rails s 即可,初次运行后刷新页面需要很长时间,因为缓存被清空了第一次要建立缓存,后面再刷新就很快了
def layer_open(h)
type = h[:type] || 1
title = h[:title]
skin = h[:skin] || 'layui-layer-rim'
area = h[:are] || ['420px', '240px']
content = h[:content]
success = h[:success] || proc {}
layer_index = `
layer.open({
type: #{type},
title: #{title},
s...
生成模型
rails g model User username:string email:string password_digest:string
在user模型加入has_secure_password
class User < ApplicationRecord
has_secure_password
end
evt.current_target对等$(this),如
Document.find('h1').on :click do |evt|
puts evt.current_target.html
end
对等jquery的
$('h1').click(function () {
console.log($(this).html())
})
查看日志大小
du -sh /var/log/journal/
只保留一天内的日志
journalctl --vacuum-time=1d
The ActiveRecord data types available in Rails 5.
:primary_key
:string
:text
:integer
:bigint
:float
:decimal
:numeric
:datetime
:time
:date
:binary
:boolean
...
触发Validation
触发Callbacks
改动updated_at
update
✅
✅
✅
update_attribute
❌
✅
✅
...
执行完
rake db:migrate
以后再执行
rake db:schema:dump
标准的方法是:
>>> os.path.splitext('thefile.jpg')[1]
'.jpg'
这样获得的是带点号的后坠,如果不要点号呢?当然可以在结果上继续处理
>>> os.path.splitext('thefile.jpg')[1][1:]
'jpg'
不过有更简便的方法,使用字符串的split方法
>>> 'thefile.jpg'.split('.')[-1]
'jpg'
有强迫症,看见python没有end关键字,就像将倾的大厦,向一边倾斜,缺少对称之美。于是总想着给python加个end。在十几年前听说韩国有程序员给python(整容😁)用注释的方式加end,比如:
if True:
print("hello")
#end
这个思路不错,但是注释前面的#号看着还是不舒服。
又想到用定义一个end变量:
if True:
print("hello")
end = ''
让end等于空字符串,这样前面不用带一个#号了,但后面拖着个小尾巴,还是不舒服。
既然注释和变量都不完美,那么用...
打开windows terminal设置,点击左下角的“打开 JSON 文件”,加上下面的红色部分
"commandline": "D:\\Programs\\Git\\bin\\bash.exe --login -i",
sass-convert -R my_sass_dir --from sass --to scss
其中:
-R 表示递归 my_sass_dir 的所有子文件夹
--from sass --to scss 表示从 sass 转换为 scss 文件
在settings.json里加入下面两行:
"editor.quickSuggestions": false,
"editor.suggestOnTriggerCharacters": false,
其中:
"editor.quickSuggestions": false 用来关闭上下文提示,加上这行以后大部分提示都可以关闭了,但是,对象的方法和属性仍然提示
"editor.suggestOnTriggerCharacters": false 这个是专门用来关闭对象的方法和属性的提示的,再加上这行...
1、在地址栏输入 edge://flags/ 然后按回车
2、搜索 Enhance text contrast
3、设置为Enabled
4、重启edge浏览器
可能是由于内存限制,对大文件只能替换前面的一部分,可以使用re.compile突破这种限制
比如:
re.sub("abc", "123", largeText, re.S|re.I)
可以改成:
match = re.compile("abc", re.S|re.I)
match.sub("123", largeText)