在rake任务中,如果我使用puts命令,那么我在控制台上看到输出.但是,在生产中部署应用程序时,我不会在日志文件中看到该消息.
但是,如果我说Rails.logger.info然后在开发模式下,我在控制台上看不到任何内容.我需要去日志文件和尾部.
我理想情况下喜欢使用Rails.logger.info并在rake任务中的开发模式下,logger的输出也应该发送到控制台.
有没有办法实现这一目标?
如果我错了,请告诉我,但我认为solr只需要schema.xml中已经提到过的字段.所以,如果我有一个名为'title'的字段,我需要在模式中提到它.
在Sunspot的文档中没有提到修改schema.xml.我只是想知道Sunspot如何修改schema.xml,允许自定义字段输入索引.
我也知道Sunspot使用RSolr来做事情.因此,如果有办法修改架构并使用RSolr将数据从DB重新加载到Solr,请告诉我.
我在那里找到了几个不同的twitter gem(用于ruby-on-rails):
http://twitter4r.rubyforge.org/
但我想知道是否有人可以评价他们并提供一个或一个新的建议.
谢谢
我设置了一个简单的新rails应用程序,带有模型入口,属性title和content使用脚手架.
现在我正在尝试使用curl来发布JSON数据(而不是使用浏览器).
以下似乎工作(即成功发布空数据):
curl --verbose --header "Accept: application/json" --header "Content-type: application/json" --request POST --data "" http://localhost:3000/entries
Run Code Online (Sandbox Code Playgroud)
以下不起作用:
curl --verbose --header "Accept: application/json" --header "Content-type: application/json" --request POST --data "{'content':'I belong to AAA','title':'AAA'}" http://localhost:3000/entries
Run Code Online (Sandbox Code Playgroud)
我尝试了很多变化.我得到的错误主要是JSON数据中未找到主机或意外令牌.
当我尝试rails s在我的Rails 3.1应用程序上进行操作时,我得到了:
/Users/Kyle/.rvm/gems/ruby-1.9.2-p290@skateparks/gems/rack-1.3.4/lib/rack/backports/uri/common_192.rb:53: warning: already initialized constant WFKV_
/Users/Kyle/.rvm/gems/ruby-1.9.2-p290@skateparks/gems/eventmachine-0.12.10/lib/rubyeventmachine.bundle: [BUG] Segmentation fault
ruby 1.9.2p290 (2011-07-09 revision 32553) [x86_64-darwin11.1.0]
-- control frame ----------
c:0038 p:-17557387368028 s:0124 b:0124 l:000123 d:000123 TOP
c:0037 p:---- s:0122 b:0122 l:000121 d:000121 CFUNC :require
c:0036 p:0012 s:0118 b:0118 l:000102 d:000117 BLOCK /Users/Kyle/.rvm/gems/ruby-1.9.2-p290@skateparks/gems/activesupport-3.1.0/lib/active_support/dependencies.rb:240
c:0035 p:0005 s:0116 b:0116 l:000107 d:000115 BLOCK /Users/Kyle/.rvm/gems/ruby-1.9.2-p290@skateparks/gems/activesupport-3.1.0/lib/active_support/dependencies.rb:223
c:0034 p:0045 s:0114 b:0114 l:000113 d:000113 METHOD /Users/Kyle/.rvm/gems/ruby-1.9.2-p290@skateparks/gems/activesupport-3.1.0/lib/active_support/dependencies.rb:640
c:0033 p:0041 s:0108 b:0108 l:000107 d:000107 METHOD /Users/Kyle/.rvm/gems/ruby-1.9.2-p290@skateparks/gems/activesupport-3.1.0/lib/active_support/dependencies.rb:223
c:0032 p:0019 s:0103 b:0103 l:000102 d:000102 METHOD /Users/Kyle/.rvm/gems/ruby-1.9.2-p290@skateparks/gems/activesupport-3.1.0/lib/active_support/dependencies.rb:240 …Run Code Online (Sandbox Code Playgroud) Rails 3.0.12,最新的omniauth,我可以连接到谷歌并获得用户的电子邮件地址就好了.但是我在SSL模式下在nginx后面运行相同的rails应用程序,并且它在Google页面中失败:
"The page you requested is invalid."
Run Code Online (Sandbox Code Playgroud)
这是我的nginx配置吗?我的omniauth设置?
我知道X-Forwarded-Proto: https这里有特殊的酱汁,还有什么我需要做的就是在SSL网络服务器后面获得开心的快乐吗?
这是完整的示例代码:您可以克隆此repo,bundle install并运行rails s以查看它工作正常,然后运行rake server以查看它失败.
https://github.com/jjulian/open_id_ssl
nginx.conf:
worker_processes 2;
pid tmp/nginx.pid;
error_log log/error.log;
daemon off;
events {
}
http {
client_body_temp_path tmp/body;
proxy_temp_path tmp/proxy;
fastcgi_temp_path tmp/fastcgi;
uwsgi_temp_path tmp/uwsgi;
scgi_temp_path tmp/scgi;
server {
listen 3000 ssl;
ssl_certificate development.crt;
ssl_certificate_key development.key;
ssl_verify_depth 6;
access_log log/access.log;
proxy_buffering off;
location / {
proxy_pass http://127.0.0.1:3300;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Host $http_host;
proxy_redirect off;
proxy_set_header …Run Code Online (Sandbox Code Playgroud) 在Ext JS中,以下maskRe不起作用,因为它没有在文本字段上放置最多5个字符的限制,为什么?
{
xtype: 'textfield',
fieldLabel: '* Zip Code',
allowBlank: false,
maskRe: /\d{0,5}/i
}
Run Code Online (Sandbox Code Playgroud) 我正在玩一个名为Jetstrap和Divshot的基于云的前端开发人员.当使用像这样的基于Web的软件时,我想如何编写用于css"背景图像"的PATH的方式有点困惑.我在哪里存储图像以及如何调用它?我想在导出之前预览背景图像.
使用标准的CouchDB视图索引,我可以灵活地对缺点与新鲜度进行内省.如何获得Cloudant dbcopy功能的类似功能?
stale=okstale=update_afterstale=false)我可以将DB update_seq与设计文档进行比较update_seq,可以update_seq=true在视图查询中或从中获取GET /db/_design/foo/_info.
BigCouch的数据库分区和多个服务器略微蒙上阴影.例如update_seq是复合材料,应仅在公差范围内进行比较; stale=false可能会选择不同的碎片,stale=ok而碎片可能或多或少是最新的; 虽然没有办法获取update_seq所有节点(或stale=false查询将选择的特定节点),但可以通过快速发出多个/db/_design/foo/_info查询来欺骗它.在这里有额外的碎片/分区内省会很好,但上面仍然适用于我的目的.
dbcopydbcopy具有大致相同的"最终一致性"特征.查询链式数据库中的文档大致类似于查询原始视图group=true&stale=ok.哪个好,大部分时间都没问题.但是文档没有提供以下内容的任何指示:
dbcopy状态?例如,数据库是否认为自己是最新的,或者是否在IOQ中轮流查看更改?如果它不是最新的,大致有多陈旧?dbcopy(在stale=update_after或中stale=false)的优先级.例如,我想要的东西POST /origin_db/_design/foo/_view/bar/_dbcopy将强制dbcopy立即将减少的结果推送到DB(可选择首先更新原点视图).dbcopy机制或dbcopy机制错过了一些文档),是否可以检测到这些?怎么纠正?有dbcopy"重置按钮"吗?我正在使用KIF和OCMock测试iOS应用程序,将设备存根ACAccountStore以返回我自己的Twitter帐户表示.我想要存根requestAccessToAccountsWithType,并使用我自己的值调用传递的完成处理程序,但我似乎无法从调用中获取块并正确调用它(EXC_BAD_ACCESS).作为Objective-C和iOS的新手,我确信自己做错了什么,同时把这个块拉出来NSInvocation.
这是生产代码._accountStore是从测试设置中注入的.
ACAccountType *twitterType = [_accountStore accountTypeWithAccountTypeIdentifier:ACAccountTypeIdentifierTwitter];
[_accountStore requestAccessToAccountsWithType:twitterType withCompletionHandler:^(BOOL granted, NSError *error) {
NSLog(@"authorized=%i in block", granted);
// important code here
}];
Run Code Online (Sandbox Code Playgroud)
测试设置代码.
ACAccountStore *realStore = [[ACAccountStore alloc] init];
// Stub the store to return our stubbed Twitter Account
id mockStore = [OCMockObject partialMockForObject:realStore];
[[[mockStore stub] andDo:^(NSInvocation *invocation) {
void (^grantBlock)(BOOL granted, NSError *error) = nil;
[invocation getArgument:&grantBlock atIndex:1]; // EXC_BAD_ACCESS
grantBlock(TRUE, nil); // run the important code with TRUE …Run Code Online (Sandbox Code Playgroud)