小编Dav*_*ave的帖子

渲染后将焦点设置在输入上

在渲染组件后,将焦点设置在特定文本字段上的反应方式是什么?

文档似乎建议使用refs,例如:

ref="nameInput"在渲染函数的输入字段中设置,然后调用:

this.refs.nameInput.getInputDOMNode().focus(); 
Run Code Online (Sandbox Code Playgroud)

但我应该在哪里打电话呢?我尝试了几个地方,但我无法让它工作.

javascript reactjs

557
推荐指数
18
解决办法
40万
查看次数

Rails ActiveRecord:如何找到或创建find_or_create_by?

可能是愚蠢的问题,但我只是没有得到它.

如果我做

widget = Widget.find_or_create_by_widgetid(:widgetid => "12345", :param2 => "folk") 
Run Code Online (Sandbox Code Playgroud)

那么如何判断newobj是找到的还是新创建的Widget?有什么东西我可以在小部件上有条件地测试会告诉我吗?

activerecord ruby-on-rails

45
推荐指数
2
解决办法
1万
查看次数

Ruby on rails:设计,想添加邀请码?

我想添加一个invite_code要求供用户注册.IE浏览器.除了要求他们指定电子邮件/密码组合,我还想要一个额外的字段:invite_code.这是一个临时修复,以便非通缉用户在给定的alpha期间无法登录.

我很困惑,因为Devise没有添加控制器.我对虚拟属性的概念很熟悉,我觉得我可以在模型中添加:invite_code,然后只需硬编码一步就可以说邀请代码必须等于12345或者其他任何东西.

设计认证是否有意义?我如何从适当的轨道安静的方法接近这个?

非常感谢你.

ruby ruby-on-rails invite devise

17
推荐指数
2
解决办法
7884
查看次数

在Rails中实现每页JavaScript的好方法是什么?

在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 - 你知道,拖放初始化器,对话框创建器等.

非常感谢你.

javascript jquery ruby-on-rails

9
推荐指数
1
解决办法
1805
查看次数

用jQuery应用css3渐变

最终,我希望根据不同的东西动态改变渐变,但是如何使用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)

这些方法无效吗?

jquery gradient css3

9
推荐指数
1
解决办法
4万
查看次数

Fragment中的ViewPager,边距和页面转换器无法正确呈现

我有一个里面有碎片的viewpager.

我使用类似于例如的代码

PageTransformer转换中的ViewPager边距

和填充,以便您可以看到当前正在查看的片段两侧的片段的淡出边缘.

但问题是,当viewpager首次启动时,任何一侧的碎片都不会褪色并缩小.

即直到你开始滑动,我的ZoomOutPageTransformer的transformPage方法才会被调用,因此初始页面右/左或任何视图看起来都是错误的,然后在完成滑动后"跳转"到右侧看.

任何想法如何使它正确呈现,所以例如,如果我打电话

myViewPager.setCurrentItem(1) - 或者任何东西,双面的页面都会被适当缩小.

如何使用应用于"屏幕外"片段的zoomoutpagetransformer使viewpager正确渲染oncreate?

animation android fragment android-viewpager

8
推荐指数
1
解决办法
2164
查看次数

使用rails中的ActiveRecord从数据库返回每第n行

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子句语法基于我在这个问题的答案中看到的内容:

PostgreSQL中的行编号

以语法错误结束,我无法得到结果.

我是否错过了一种更明显的方式来有效地返回每个第n个任务,或者如果我在正确的轨道上有任何指针要走的路?显然,返回所有数据并在之后将其固定在轨道中是可能的,但非常低效.

谢谢!

postgresql activerecord ruby-on-rails

6
推荐指数
1
解决办法
2914
查看次数

如何将工作人员分成延迟工作+ heroku的工作池?

我的环境是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生产环境中?

ruby-on-rails heroku delayed-job

6
推荐指数
1
解决办法
4172
查看次数

PHP在Windows上发送邮件,导致它在发送电子邮件后"挂起"

我们正在开始构建一个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服务器.

php windows email smtp

5
推荐指数
1
解决办法
1982
查看次数

Rails 3.1设计Oauth为Facebook路由混乱

以下后:

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方法很难解释.我无法理解为什么它会重定向到新的用户注册网址 - 用户被创建或存在,那么持久性与什么有关?

显然困惑,所以帮助升值.:)

谢谢,

戴夫

facebook ruby-on-rails oauth devise

5
推荐指数
1
解决办法
3586
查看次数