在渲染组件后,将焦点设置在特定文本字段上的反应方式是什么?
文档似乎建议使用refs,例如:
ref="nameInput"
在渲染函数的输入字段中设置,然后调用:
this.refs.nameInput.getInputDOMNode().focus();
Run Code Online (Sandbox Code Playgroud)
但我应该在哪里打电话呢?我尝试了几个地方,但我无法让它工作.
可能是愚蠢的问题,但我只是没有得到它.
如果我做
widget = Widget.find_or_create_by_widgetid(:widgetid => "12345", :param2 => "folk")
Run Code Online (Sandbox Code Playgroud)
那么如何判断newobj是找到的还是新创建的Widget?有什么东西我可以在小部件上有条件地测试会告诉我吗?
我想添加一个invite_code要求供用户注册.IE浏览器.除了要求他们指定电子邮件/密码组合,我还想要一个额外的字段:invite_code.这是一个临时修复,以便非通缉用户在给定的alpha期间无法登录.
我很困惑,因为Devise没有添加控制器.我对虚拟属性的概念很熟悉,我觉得我可以在模型中添加:invite_code,然后只需硬编码一步就可以说邀请代码必须等于12345或者其他任何东西.
设计认证是否有意义?我如何从适当的轨道安静的方法接近这个?
非常感谢你.
在Ruby中尝试新事物 - 在每个页面上我都在用jquery做很丰富的东西.显然,如果我把所有jquery都放到application.js中,它会很快变大.
在最后延迟加载特定于页面的js文件是一种好方法吗?例如:
<script>
$(document).ready(function() {
$.getScript("/javascripts/this_pages_scripts.js");
});
</script>
Run Code Online (Sandbox Code Playgroud)
这样做有轨道方式吗?我知道new.js.erb等文件和ujs,但我仍然在谈论更多特定于页面的js - 你知道,拖放初始化器,对话框创建器等.
非常感谢你.
最终,我希望根据不同的东西动态改变渐变,但是如何使用jquery来应用css3渐变呢?
//works
$(element).css("background-image", "url(http://www.google.co.uk/images/logos/ps_logo2.png)");
//doesn't work
$(element).css("background-image","-webkit-gradient(linear,left bottom,right bottom,color-stop(0.50, rgb(194,231,255)),color-stop(0.50, rgb(255,255,255))");
//doesn't work
$(element).css("background-image","-moz-linear-gradient(left center,rgb(194,231,255) 28%,rgb(255,255,255) 28%");
Run Code Online (Sandbox Code Playgroud)
我错过了什么?我也试过了
$(element).css({background: "-webkit-gradient(linear,left bottom,right bottom,color-stop(0.50, rgb(194,231,255)),color-stop(0.50, rgb(255,255,255)"});
Run Code Online (Sandbox Code Playgroud)
这些方法无效吗?
我有一个里面有碎片的viewpager.
我使用类似于例如的代码
PageTransformer转换中的ViewPager边距
和填充,以便您可以看到当前正在查看的片段两侧的片段的淡出边缘.
但问题是,当viewpager首次启动时,任何一侧的碎片都不会褪色并缩小.
即直到你开始滑动,我的ZoomOutPageTransformer的transformPage方法才会被调用,因此初始页面右/左或任何视图看起来都是错误的,然后在完成滑动后"跳转"到右侧看.
任何想法如何使它正确呈现,所以例如,如果我打电话
myViewPager.setCurrentItem(1) - 或者任何东西,双面的页面都会被适当缩小.
如何使用应用于"屏幕外"片段的zoomoutpagetransformer使viewpager正确渲染oncreate?
Ruby 1.9.2/rails 3.1/deploy到heroku - > posgresql
嗨,一旦与一个对象有关的行数超过一定数量,我希望将每个第n行拉回来.这只是因为行(部分)使用行来显示图形数据,所以一旦返回的行数超过20,那么每秒返回一次就好了,依此类推.
这个问题似乎指向了正确的方向: ActiveRecord查找 - 跳过记录或获取每个第N条记录
对行号进行修改是有道理的,但基本上使用:
@widgetstats = self.widgetstats.find(:all,:conditions => 'MOD(ROW_NUMBER(),3) = 0 ')
Run Code Online (Sandbox Code Playgroud)
不起作用,它返回一个错误:
PGError: ERROR: window function call requires an OVER clause
Run Code Online (Sandbox Code Playgroud)
任何尝试解决这个问题的方法都是基于我的OVER子句语法基于我在这个问题的答案中看到的内容:
以语法错误结束,我无法得到结果.
我是否错过了一种更明显的方式来有效地返回每个第n个任务,或者如果我在正确的轨道上有任何指针要走的路?显然,返回所有数据并在之后将其固定在轨道中是可能的,但非常低效.
谢谢!
我的环境是rails 3.1,heroku bamboo stack,delayed_job_active_record,(https://github.com/collectiveidea/delayed_job)并尝试使用hirefire.(https://github.com/meskyanichi/hirefire) - 我可以看到delayed_job队列文档,但是如何在heroku上应用它?
我有一组最高优先级的任务,每小时就会产生一次,我需要投入3名工作人员,大约需要26分钟才能完成.在此期间,不太重要的背景任务需要继续,可能有1名工作人员致力于他们.
因此,我将优先级任务块设置为命名队列,例如'hourtask',然后为其他所有内容命名一个队列'everythingelse':)
问题是,我如何将heroku工作者专门用于特定队列?是否与文档中的环境变量有关?它说:
# Set the --queue or --queues option to work from a particular queue.
$ RAILS_ENV=production script/delayed_job --queue=tracking start
$ RAILS_ENV=production script/delayed_job --queues=mailers,tasks start
Run Code Online (Sandbox Code Playgroud)
但是我对heroku设置不太熟悉,想知道如何将它应用到我的heroku生产环境中?
我们正在开始构建一个Web应用程序.我的同事正在开发linux,我正在通过运行windows xp的WAMP堆栈运行.我们正在使用Zend.
当我们使用Zend电子邮件提交表单并发送电子邮件时,电子邮件将发送,然后我会得到一个空白屏幕,在linux机器上应用程序将继续正常.
所以我写了我自己的小脚本,mail.php,它使用phpmailer - 完全相同的事情发生了,电子邮件发送,然后是空白屏幕.所以我们有:
if(!$mail->Send())
{
echo "Mailer Error: " . $mail->ErrorInfo;
}
else
{
echo "Message has been sent";
}
Run Code Online (Sandbox Code Playgroud)
因此,没有报告错误,电子邮件发送,但"已发送消息"从未打印到屏幕(或其他任何东西,也是正常的HTML).
我不是很技术,如果有明显的调试步骤,请道歉.有没有我错过的Windows php配置特有的东西?
它是具有身份验证的异地SMTP服务器.
以下后:
https://github.com/plataformatec/devise/wiki/OmniAuth:-Overview
我可以通过Facebook注册用户.但我正在努力定义自己的重定向.
显然,已经facebook注册/重定向到我的应用程序并继续使用的现有用户是完美的,但是通过我感兴趣的facebook新创建的用户就是这种情况.
class Users::OmniauthCallbacksController < Devise::OmniauthCallbacksController
def facebook
# You need to implement the method below in your model
@user = User.find_for_facebook_oauth(request.env["omniauth.auth"], current_user)
if @user.persisted?
flash[:notice] = I18n.t "devise.omniauth_callbacks.success", :kind => "Facebook"
sign_in_and_redirect @user, :event => :authentication
else
session["devise.facebook_data"] = request.env["omniauth.auth"]
redirect_to new_user_registration_url
end
end
end
Run Code Online (Sandbox Code Playgroud)
user.persisted是什么意思?find_for_facebook_oauth与设计维基页面规定的相同; 即通过电子邮件查找用户并返回(如果存在),或者如果不存在则创建具有自动密码的新用户.
但我需要它将新创建的用户重定向到他们设置密码的页面.我不希望存根密码持久存在,我希望用户立即出现一个屏幕,以确认他们的名字和b)确认他们的密码.
我为接受邀请(通过https://github.com/scambra/devise_invitable/)的人提供了这样的屏幕,这些邀请在视图/设计/邀请/编辑中 - 如果它可以工作,这将非常适合这个.
我应该在哪里添加重定向以及这种重定向采用什么格式?我觉得上面的facebook方法很难解释.我无法理解为什么它会重定向到新的用户注册网址 - 用户被创建或存在,那么持久性与什么有关?
显然困惑,所以帮助升值.:)
谢谢,
戴夫