小编rdn*_*man的帖子

React on Rails集成

我正在寻找使用gem react-rails实现ReactJS作为我的Rails应用程序的视图.到目前为止,我只使用标准.erb在我的RoR应用程序中呈现我的视图,我想知道如何使用React做一些问题.

例如,当您想在RoR中为模型创建表单时,您只需使用以下命令创建表单:

<%= form_for(@product) do |f| %>
  <%= f.text_field :name %>
  ...
  <%= f.submit %>
<% end %>
Run Code Online (Sandbox Code Playgroud)

而这个自动使用正确的路线,产生CSRF令牌,使用正确的CSS idclass等...

现在,如果我使用React,我必须照顾所有这些吗?并以老式的方式在渲染中创建JSX中的表单?

# My view .html.erb
<%= react_component 'Form', {} %>

# My js.jsx file
var Form = React.createClass({
render: function () {
  return (
    <form className="new_my_model" onSubmit={this.handleSubmit}>
      <input style={inputStyle} type="text" className="my_model_name" />
      ...
      <input type="submit" value="Post" />
    </form>
  );
}
});
Run Code Online (Sandbox Code Playgroud)

没有像Ruby for React这样的"自动生成功能"?

我已经发现了一些ressources网上关于教程阵营与铁轨(1,2,3),但大多数时候,他们说不同的东西.有些人使用JSX,一些咖啡,而官方的React网站建议使用JSX …

javascript ruby-on-rails reactjs react-rails

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

机架投掷EOFError(坏内容体)

我们使用Ruby 2.1.2,Rails 3.2.19和JQuery 1.11,资源管道没有被使用(所以不使用JQuery-ujs,但显式使用了相关的rails.js).对于大多数用户来说,JQuery和其他相关的常见插件都是从谷歌CDN中提取的(包括jquery.form 3.50).受影响的Web服务器是Ubuntu 14.04,Nginx 1.6和Passenger 4.x.

对于我们生产服务器上大约10%的用户(负载似乎无关紧要),我们正在获得这样的堆栈转储,主要用于一个URL,但还有其他的:

/gems/rack-1.4.5/lib/rack/multipart/parser.rb:74 in "block in fast_forward_to_first_boundary"
/gems/rack-1.4.5/lib/rack/multipart/parser.rb:72 in "loop"
/gems/rack-1.4.5/lib/rack/multipart/parser.rb:72 in "fast_forward_to_first_boundary"
/gems/rack-1.4.5/lib/rack/multipart/parser.rb:15 in "parse"
/gems/rack-1.4.5/lib/rack/multipart.rb:25 in "parse_multipart"
/gems/rack-1.4.5/lib/rack/request.rb:336 in "parse_multipart"
/gems/rack-1.4.5/lib/rack/request.rb:201 in "POST"
/gems/actionpack-3.2.19/lib/action_dispatch/http/request.rb:237 in "POST"
/gems/actionpack-3.2.19/lib/action_dispatch/http/parameters.rb:10 in "parameters"
/gems/actionpack-3.2.19/lib/action_dispatch/http/filter_parameters.rb:31 in "filtered_parameters"
/gems/newrelic_rpm-3.9.3.241/lib/new_relic/agent/instrumentation/rails3/action_controller.rb:31 in "process_action"
/gems/actionpack-3.2.19/lib/abstract_controller/base.rb:121 in "process"
/gems/actionpack-3.2.19/lib/abstract_controller/rendering.rb:45 in "process"
/gems/actionpack-3.2.19/lib/action_controller/metal.rb:203 in "dispatch"
/gems/actionpack-3.2.19/lib/action_controller/metal/rack_delegation.rb:14 in "dispatch"
/gems/actionpack-3.2.19/lib/action_controller/metal.rb:246 in "block in action"
/gems/actionpack-3.2.19/lib/action_dispatch/routing/route_set.rb:73 in "call"
/gems/actionpack-3.2.19/lib/action_dispatch/routing/route_set.rb:73 in "dispatch"
/gems/actionpack-3.2.19/lib/action_dispatch/routing/route_set.rb:36 in "call"
/gems/journey-1.0.4/lib/journey/router.rb:68 in "block in call"
/gems/journey-1.0.4/lib/journey/router.rb:56 in "each"
/gems/journey-1.0.4/lib/journey/router.rb:56 in …
Run Code Online (Sandbox Code Playgroud)

ruby jquery rack ruby-on-rails

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

TinyMCE 4无法输入提供的插件文本字段

在JS(使用JQuery 1.11.1和几个JQuery插件,如form和ui)下使用TinyMCE 4.1.5.我使用的TinyMCE版本不是嵌入式JQuery的版本.

编辑器很好,我可以直接输入它而没有问题.仅使用tinymce提供的插件,使用按钮或非文本字段控件的所有功能都可以正常工作.

但是,插件中的文本字段(例如链接或插入视频)不允许我键入字段或选择其他文本字段(因此它似乎是一个焦点问题).

http://fiddle.tinymce.com/bzeaab/16上有一个小提琴,这里是应用程序中更具体的初始化代码:

var _clear_css_cache;
_clear_css_cache = '/javascripts/canonical/tinymce/skins/lightgray/' +
                   'content.min.css?' +
                   new Date().getTime();

var _toolbar_1, _toolbar_2;
_toolbar_1 = 'formatselect, |, ' +
             'bold, italic, underline, strikethrough, ' +
                'subscript, superscript, |,' +
             'outdent, indent, blockquote, |,' +
             'alignleft, aligncenter, alignright, alignjustify';

_toolbar_2 = 'bullist, numlist, table, charmap, emoticons |,' +
             'link, unlink, |,' +
             'image, media, |,' +
             'code, preview |,' +
             'pasteword, print |,' +
             'undo, redo,';

var _contextmenu;
_contextmenu = 'link image inserttable | …
Run Code Online (Sandbox Code Playgroud)

javascript jquery tinymce tinymce-4

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

使用ReactJS调用AJAX后处理Rails flash消息

有几篇帖子描述了在AJAX调用之后显示flash消息(例如,在ajax调用之后Rails不显示flash消息,你如何使用Ajax请求处理Rail的flash?).

我正在使用带有react-rails的ReactJS并希望这样做,并希望利用React的动态显示渲染.

因此,我正在回答我自己的问题,即如何在AJAX调用之后使用下面的ReactJS来回复Flash消息,以回答可能遇到此问题的其他人并获得改进建议.

javascript ajax ruby-on-rails reactjs

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

为form_for指定":html => {:multipart => true}"是否正确?

我们正在运行Rails 3.2.19和Ruby 2.1.2.

我们有一个传统的代码行(实际上,不止一行,但这一行特别值得关注)

form_for [@commentable, @comment], :html => { :multipart => true, :class => "lightbox_form"} do |f|

表格数据可以包括或不包括由用户自行决定的上传文件.

SO中的许多示例都指的是指定:multipart设置,但后来我在Form_for中看到了这个答案:multipart => true吐出然后查看http://guides.rubyonrails.org/v3.2.19/form_helpers上的文档. html#uploaded-files,我看到它不应该是必要的(除非使用form_tag).我也在https://github.com/rails/rails/issues/10176上看到这个讨论,这增加了我的困惑.

我问的部分是因为我们在Rack中遇到EOF错误(没有内容通过多部分解析器; 如果你对这些细节感兴趣,请参阅Rack throw EOFError(错误内容正文)).

我们的代码可能以前在早期版本的Rails中运行时可能是必要的(因此可能只是一个保留).但是考虑到包含SO的所有其他示例:multipart,我想在删除之前更好地了解是否:multipart需要或何时需要,form_for以及我可能遇到的副作用.

ruby rack ruby-on-rails multipartform-data form-for

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