我使用标准的jekyll安装来维护博客,一切都很顺利.除了我真的想标记我的帖子.
我可以使用YAML前端标记帖子,但是如何为每个标签生成可以列出标签所有帖子的页面?
当我浏览应用程序*(s)的迭代时,我会累积迁移.截至目前,有48个这样的文件,跨越大约24个月的活动.
我正在考虑把我的电流schema.rb当作基线.
我还在考虑删除(当然还有源代码控制)现有的迁移,并从我当前的架构中创建一个漂亮的新单一迁移?迁移往往喜欢符号,但rake db:schema:dump使用字符串:我应该关心吗?
这看起来合情合理吗?如果是这样,这种练习在什么样的时间间隔才有意义?如果没有,为什么不呢?
我是否错过了一些(耙?)任务可以为我做这个?
* 就我而言,所有应用程序都是基于Rails的,但任何使用ActiveRecord迁移的应用程序似乎都适合这个问题.
假设我有一个Dog,如果它trained在Rails中我想存储.通常,返回布尔值的Ruby方法具有以此结尾的名称?.我应该调用数据库列trained?,还是应该调用数据库列trained并使用方法
class Dog
def trained?
trained
end
end
Run Code Online (Sandbox Code Playgroud)
后一个选项似乎效率低下,特别是当我有很多布尔字段时.
或者还有其他一些我想念的替代方案吗?
我有一个哈希
foo = {'bar'=>'baz'}
Run Code Online (Sandbox Code Playgroud)
我想打个电话 foo.bar #=> 'baz'
我的动机是将activerecord查询重写为原始sql查询(使用Model#find_by_sql).这将返回一个带有SELECT子句值作为键的哈希.但是,我现有的代码依赖于object.method点表示法.我想做最小的代码重写.谢谢.
编辑:看来Lua有这个功能:
point = { x = 10, y = 20 } -- Create new table
print(point["x"]) -- Prints 10
print(point.x) -- Has exactly the same meaning as line above
Run Code Online (Sandbox Code Playgroud) 您是否注意到如果在rails中运行rake -T,则rake描述列表会被终端窗口的宽度截断.所以应该有一种方法可以在Ruby中使用它并使用它.
我在屏幕上打印一些Ascii-art,我不希望它被打破.因此我需要在运行时找出终端的宽度.
任何想法怎么做?
每当我为我的Rails应用程序运行rspec测试时,它在实际开始运行测试之前需要花费一天的时间和一天的开销.为什么rspec这么慢?有没有办法加速Rails的初始加载或单独我需要的Rails应用程序的部分(例如只有ActiveRecord的东西)所以它不会加载绝对的一切来运行一些测试?
我一直试图将Rails应用程序挂钩到ActiveDirectory.我将同步AD和数据库之间的用户数据,目前是MySQL(但可能会变成SQL Server或PostgreSQL).
我已经检查了activedirectory-ruby,它看起来真的很麻烦(1.0发布!?).它包装了Net :: LDAP,所以我尝试使用它,但它非常接近LDAP的实际语法,并且我喜欢ActiveDirectory-Ruby的抽象,因为它具有类似ActiveRecord的语法.
是否有一个优雅的ORM类型的目录服务器工具?更好的是,如果有一些用于LDAP的脚手架工具(用户,组,组织单位等的CRUD).然后,我可以通过Authlogic快速将其与我现有的身份验证代码集成,并保持所有数据同步.
我有一个200个命令的列表/队列,我需要在Linux服务器上的shell中运行.
我只希望一次最多运行10个进程(从队列中).某些流程需要几秒钟才能完成,其他流程需要更长时间.
当进程完成时,我希望从队列中"弹出"下一个命令并执行.
有没有人有代码来解决这个问题?
进一步阐述:
在某种队列中需要完成200件工作.我希望一次最多可以完成10件工作.当一个线程完成一项工作时,它应该要求队列进行下一项工作.如果队列中没有其他工作,则线程应该死掉.当所有线程都已经死亡时,意味着所有工作都已完成.
我正在尝试解决的实际问题是使用imapsync将旧邮件服务器中的200个邮箱同步到新邮件服务器.某些用户拥有大型邮箱并需要很长时间才能同步,其他用户拥有非常小的邮箱并可以快速同步.
在Ruby中使用类文件时,是否将'requires'语句放在文件的顶部或类定义中?
我知道我做了一些愚蠢的事情或者没有做一些聪明的事情 - 我经常对两者都感到内疚.
这是一个让我痛苦的例子:
我有一个模块保存在/ lib中作为test_functions.rb,看起来像这样
module TestFunctions
def abc
puts 123
end
end
Run Code Online (Sandbox Code Playgroud)
进入ruby脚本/跑步者,我可以看到模块正在自动加载(良好的配置以及所有......)
>> TestFunctions.instance_methods
=> ["abc"]
Run Code Online (Sandbox Code Playgroud)
所以这个方法是已知的,让我们试试吧
>> TestFunctions.abc
NoMethodError: undefined method `abc' for TestFunctions:Module from (irb):3
Run Code Online (Sandbox Code Playgroud)
不.这个怎么样?
>> TestFunctions::abc
NoMethodError: undefined method `abc' for TestFunctions:Module from (irb):4
Run Code Online (Sandbox Code Playgroud)
再试一次.
defined?(TestFunctions::abc) #=> nil, but
TestFunctions.method_defined? :abc #=> true
Run Code Online (Sandbox Code Playgroud)
就像我在顶部说的那样,我知道我是愚蠢的,有人会让我失望吗?