我的模型有一些RSpec测试,我想打开SQL ActiveRecord日志,就像我在Rails服务器模式中看到的那样.怎么做?
我开始测试了
RAILS_ENV=test bundle exec rspec my/test_spec.rb
Run Code Online (Sandbox Code Playgroud)
谢谢
我发现很难找到有关Gnome Shell Extensions的文档.我在Gnome Wiki上发现了一些内容(它是第一级链接),但它并不多:
http://live.gnome.org/GnomeShell/Extensions
这里的问题是GJS和它的绑定.绝对没有文档,有很多SIGSEGV,绑定还没准备好(GLib,Gio等).唯一可行的是从GIR为种子JavaScript实现生成的非官方文档:
http://roojs.org/seed/gir-1.2-gtk-2.0/seed/
哪里可以获得更多例子?我想读取目录,文件,生成进程,打开网络套接字和做其他事情.
更新:演示如何在GJS中逐行读取文件.根据谷歌这是不可能的.谢谢.
我需要输出一些文本作为bash脚本,但在脚本中.我为此使用了猫,但它有一个缺点.它在写入过程中解释变量和内容.我确实想要阻止这一点.
如何在不引用所有变量的情况下做到这一点(我的脚本长得太长)?例
cat >/tmp/script << EOF
$HOSTNAME
# lots of other stuff I do NOT want to escape like \$VARIABLE
# ...
EOF
cat /tmp/script
myhostname.mylan
Run Code Online (Sandbox Code Playgroud)
我想要:
cat /tmp/script
$HOSTNAME
Run Code Online (Sandbox Code Playgroud)
编辑:请注意我的脚本(这里只有$ HOSTNAME)很长,我不想改变它.同时单引号不起作用与<<
cat >/tmp/script '<< EOF
$HOSTNAME
EOF'
File not found: EOF'
Run Code Online (Sandbox Code Playgroud)
有什么诀窍?谢谢.
我需要在某些文档中替换字符串.我用谷歌搜索了这段代码,但遗憾的是它没有改变任何东西.我不确定下面这行的语法:
pulpdb = db.getSisterDB("pulp_database");
var cursor = pulpdb.repos.find();
while (cursor.hasNext()) {
var x = cursor.next();
x['source']['url'].replace('aaa', 'bbb'); // is this correct?
db.foo.update({_id : x._id}, x);
}
Run Code Online (Sandbox Code Playgroud)
我想添加一些调试打印以查看值是什么,但我没有使用MongoDB Shell的经验.我只需要替换它:
{ "source": { "url": "http://aaa/xxx/yyy" } }
Run Code Online (Sandbox Code Playgroud)
同
{ "source": { "url": "http://bbb/xxx/yyy" } }
Run Code Online (Sandbox Code Playgroud) 我想在模型方法中获取表名.我发现应该有方法table_name但是当我尝试调用它时,我得到NameError异常:未定义的局部变量或方法`table_name'.显然不存在:
pp methods.grep(/^ta.*/)
["table_name_prefix?",
"table_name_suffix?",
"taint",
"taguri",
"taguri=",
"tainted?",
"table_name_prefix",
"table_name_suffix",
"tap"]
Run Code Online (Sandbox Code Playgroud)
如何获得一个"真正的"表名(没有lowecase - 复数技巧)?
谢谢
Exetrant Ctags与Ruby不兼容,你可以看到ruby.c代码中有很多hacks,基本上它无法识别很多情况.其中最重要的是这一点:
class SomeModule::SomeClass
end
Run Code Online (Sandbox Code Playgroud)
Ctags生成:
SomeModule someclass.rb /^class SomeModule::SomeClass$/;" c
Run Code Online (Sandbox Code Playgroud)
这是错的.正确和预期的条目是:
SomeClass someclass.rb /^class SomeModule::SomeClass$/;" c
Run Code Online (Sandbox Code Playgroud)
这是非常有限的.有一些可用的ctags补丁不起作用,例如https://github.com/xtao/overlay/blob/master/dev-util/ctags/files/ctags-5.5.4-ruby-classes.patch但是看起来在ctags ruby代码库上,这确实需要完全重写.
所以我一直在玩其他选项,这是https://github.com/rdoc/rdoc-tags哪个更好,但速度很慢.我的意思是真的很慢.使用ctags在我的项目上生成标记为2秒,但使用此工具生成标记为1小时.真.
我找到了一个旧项目,它自己解析Ruby并生成标签,但它只适用于Ruby 1.8.它比ctags慢,但并不那么糟糕.
所以我正在寻找一些替代方案.你知道任何其他工作的ruby ctags发生器,它给你正确的输出,并且很快?
谢谢!
编辑:我发现非常好的项目适用于Ruby 1.9+并且准确,快速.我推荐它:
我不希望Rails 3在每次迁移时生成我的模式.如何正确禁用它?
谢谢
我希望有一个rake任务来截断所有表.我在互联网上找到了一个,但它只适用于Rails 2并且不适用于Rails 3(问题在于获取数据库连接).
rake db:reset不是一个选项,因为我使用的是PostgreSQL,它也会丢弃用户.因此迁移失败.我只想清除数据.
你们有什么事吗?
有没有可能将ActiveRecord表名正确转换为模型类名?我找到了一个黑客
def model_for_table(table_name)
table_name.classify.constantize
end
Run Code Online (Sandbox Code Playgroud)
但由于我们在许多模型中使用set_table_name,因此无法使用.有什么办法吗?
ruby ×6
activerecord ×3
javascript ×2
bash ×1
ctags ×1
gnome ×1
gnome-3 ×1
gnome-shell ×1
mongodb ×1
postgresql ×1
rake ×1
rspec-rails ×1
seed ×1
sql ×1
vim ×1