我阅读了一些关于使用Rails(2.3.5)设置memcached的教程,我有点迷失了.
这是我需要缓存的内容:我具有存储在db中的用户特定设置.在ApplicationController中查询设置,这意味着每个请求正在运行查询.
我知道Rails内置了对SQL缓存的支持,但缓存只持续一段时间.
我想要一种简单的方法来保持设置(也是ActiveRecord模型)一段任意的时间.如果我还可以在设置更改时随时轻松重置缓存,则可获得奖励积分.
谢谢
我的开发团队需要更精确地执行rake任务.某些任务只需在特定代码更改后运行一次.在没有太具体的情况下,在代码中实现新用户的新业务规则之后,需要更新某些现有用户记录.
我们喜欢迁移如何使用db表进行日志记录.是否有类似的工具用于rake任务?我们可以破解Rails'/ ActiveRecord的rake任务迁移系统吗?
我们不希望将与数据库相关的迁移与rake任务混合在一起,因此任何明确保持这些迁移的解决方案都会很棒.
谢谢.
在我的User模型中,我有以下代码:
def twitter_client
OAuth::AccessToken.new(twitter_oauth, self.access_token_key, self.access_token_secret)
end
def twitter_oauth
OAuth::Consumer.new(Twitter::Login.consumer_key, Twitter::Login.secret, :site => Twitter::Login.site)
end
Run Code Online (Sandbox Code Playgroud)
这样我可以像这样调用User#twitter_client:
current_user.twitter_client.post('/statuses/update.xml', {'status' => 'foooo', 'Accept' => 'application/xml'})
Run Code Online (Sandbox Code Playgroud)
这很好用,实际上会更新状态,并返回以下内容:
#<Net::HTTPOK 200 OK readbody=true>
Run Code Online (Sandbox Code Playgroud)
这对于更新状态确实不是问题.但是,当我想获取最新的推文时,我得到的只是一个响应代码对象,没有来自响应的实际内容:
current_user.twitter_client.get('/statuses/user_timeline.xml', {'Accept' => 'application/xml'})
=> #<Net::HTTPOK 200 OK readbody=true>
Run Code Online (Sandbox Code Playgroud)
此返回的对象只是一个实例,Net::HTTPOK并且不包含推文数据.
我如何获取推文数据?
我正在权衡使用"Scratch身份验证"(在此Railscast中实现)与使用Devise的优缺点.
我正在使用自定义数据存储区,因此使用Devise并不像遵循自述文件那么简单.这需要编写一个自定义的ORM adapto r,这远非微不足道.
鉴于这一切,Railscast Auth从头开始似乎更容易实现.
那有多安全呢?
更新:我应该指出我正在使用Parse.com作为我的数据存储区.这意味着它们会处理散列密码并限制用户名的唯一性.
我有一个哈希conditions:
{"age" => "52", "First_Name" => "Bat"}
Run Code Online (Sandbox Code Playgroud)
我有一系列person哈希:
[{"id"=>"1", "First_Name"=>"John", "Last_Name"=>"Doe", "Age"=>"27"}, {"id"=>"2", "First_Name"=>"Jane", "Last_Name"=>"Doe", "Age"=>"26"}, {"id"=>"3", "First_Name"=>"Bat", "Last_Name"=>"Man", "Age"=>"52"}, {"id"=>"4", "First_Name"=>"Bat", "Last_Name"=>"Woman", "Age"=>"51"}]
Run Code Online (Sandbox Code Playgroud)
如何获得person匹配的所有哈希值conditions?(在这种情况下,它应该只返回"蝙蝠侠"哈希.)
对于我的Rails应用程序,我们开发了一个半自制的电子邮件系统.我们创建了一个名为Email的模型,然后将其添加到要发送的队列中(使用Web服务).
为了创建模板,我们只是在模型中将字符串拼接在一起,即:
Email < ActiveRecord::Base
def self.stock_message(recipient)
email = Email.create do |e|
e.recipient = recipient
e.message = String.new
e.message << "first line <br />"
e.message << "second line <br />"
end
end
end
#to send:
e = Email.stock_message "foo@bar.baz"
Run Code Online (Sandbox Code Playgroud)
这显然违反了MVC,当我想使用辅助方法格式化字符串时,这确实成为一个问题.如何正确地将视图代码与模型分开?