标签: partials

Rails 3缓慢部分渲染

第一个代码:

# matches/index.html.haml
%ul.match_list
- @matches.each do |match|
  %li
    =render match
# matches/_match.html.haml
%li
  =match.id
Completed 200 OK in 665ms (Views: 496.3ms | ActiveRecord: 142.1ms)
Run Code Online (Sandbox Code Playgroud)

地狱慢了.

第二个代码:

# matches/index.html.haml
%ul.match_list
- @matches.each do |match|
  %li
    =match.id
Completed 200 OK in 196ms (Views: 30.0ms | ActiveRecord: 134.6ms)
Run Code Online (Sandbox Code Playgroud)

好多了.

为什么在不使用部分时这么快?

views ruby-on-rails partials ruby-on-rails-3

3
推荐指数
1
解决办法
4174
查看次数

十分之一突然变得缓慢(随机)

当我查看我的日志文件时,我得到以下行:

...
Rendered partials/_something.html.erb (11.8ms)
Rendered partials/_something.html.erb (123.8ms)
Rendered partials/_something.html.erb (8.2ms)
Rendered partials/_something.html.erb (7.3ms)
Rendered partials/_something.html.erb (7.1ms)
Rendered partials/_something.html.erb (8.5ms)
Rendered partials/_something.html.erb (7.2ms)
Rendered partials/_something.html.erb (7.1ms)
Rendered partials/_something.html.erb (7.4ms)
Rendered partials/_something.html.erb (7.9ms)
...
Run Code Online (Sandbox Code Playgroud)

我按照以下方式包括它们

@collection.each do |something|
    render :partial => 'partials/something', :locals => {:something => something}
end
Run Code Online (Sandbox Code Playgroud)

我觉得很奇怪,在这种情况下,第二个渲染(相同的部分渲染)需要比任何其他渲染更长的时间.但是,当我重新加载页面时,其他一些渲染需要花费更多时间,而@collection-variable仍然处于相同的顺序.

我实际上并不知道如何描述这个.我的意思是,当它something导致缓慢的反应时,我能够弄明白.但它接缝只是一个随机的.这可能是一些内存泄漏吗?

我希望你知道答案=)!

ruby-on-rails partials

3
推荐指数
1
解决办法
363
查看次数

在node.js中使用带有express的partials

我试图使用node.js渲染部分.这是我的代码.

app.js:

  var express = require('express')
  , routes = require('./routes');

var app = module.exports = express.createServer();

// Configuration

app.configure(function(){
  app.set('views', __dirname + '/views');
  app.set('view engine', 'jade');
  app.use(express.bodyParser());
  app.use(express.methodOverride());
  app.use(app.router);
  app.use(express.static(__dirname + '/public'));
});

app.configure('development', function(){
  app.use(express.errorHandler({ dumpExceptions: true, showStack: true }));
});

app.configure('production', function(){
  app.use(express.errorHandler());
});

// Routes

app.get('/', routes.index);

var products = require('./products.js');

app.get('/products', function(req, res) {
    res.render('products/index', {locals: {
               products: products.all
               }
               });
});

app.listen(3000);
Run Code Online (Sandbox Code Playgroud)

当我转到localhost:3000 /产品时,它应该呈现index.jade,它位于views文件夹中的products文件夹中.以上我使用views目录设置 app.set('views', __dirname + '/views');

index.jade:

h1 Products:
#products!= partial('partials/product', {collection: products}) …
Run Code Online (Sandbox Code Playgroud)

javascript partials node.js express pug

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

Jade/Pug 中带有动态数据的部分模板

我正在尝试用 2 个块创建视图。每个块都有不同的实时数据源。当我在主视图中使用 Jade 的包含时,:

extends ../layout

block content
 link(rel='stylesheet', type='text/css', href='/stylesheets/people.css')
 include ../store/peopleTemplate.pug
Run Code Online (Sandbox Code Playgroud)

我收到错误

Cannot read property 'people' of undefined.
Run Code Online (Sandbox Code Playgroud)

原因是数据仍在加载中。如果排除该包含,而是在恢复数据使用的函数中

res.render(template, {  data:localData });
Run Code Online (Sandbox Code Playgroud)

模板不会添加到视图中。

如何将来自不同来源的动态数据的 2 个或多个部分视图添加到 1 个视图?谢谢

javascript partials node.js pug

3
推荐指数
1
解决办法
8951
查看次数

AJAX,Rails和动态加载表单

我有一个轨道应用程序,已经有点牵引力,但我有一个严重的头痛要处理.这是一种基本的资产管理应用程序 - 用户上传他们的照片,.pdfs,视频等,系统允许他们管理资产的呈现方式.

我开始使用相当标准的rails视图 - 这是由rails生成的 - 为index.html.erb.我有一个部分为每个资产呈现缩略图,如下所示:

<div id="preview">  </div>
Run Code Online (Sandbox Code Playgroud)

我想要的是缩略图是可点击的(很容易)但是当用户点击该按钮时,div的内容将被填充,好吧,基本上是edit.html.erb,但我猜它需要作为一个部分完成.我已经用直接的javascript管理了这个.

我可以访问新版"Agile Development on Rails"一书的出版前版本,任何人都可以通过该出版社获得该版本,但是关于AJAX的章节非常小,并且假定我拥有的这些东西比我更多,这就是我第一次涉足javascript和rails.

更新:回答"问题是什么"'回答',虽然我认为很清楚:

我需要在缩略图的部分内容中点击它来将编辑表单加载到div中?

javascript ajax views ruby-on-rails partials

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

Zend Framework - 共享视图脚本路径(全局部分)

如何为部分人员设置共享视图脚本路径以在Zend Framework中创建全局部分?

我们知道您可以在模块之间调用partials

e.g  -  echo        $this->partial('partial_title','module_name');
Run Code Online (Sandbox Code Playgroud)

但是我们需要在根目录中设置一个部分文件夹(即在模块下面),以便所有视图都可以访问它.

有人建议设置共享视图脚本路径,这是怎么做到的?

php zend-framework partials

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

在大型Rails项目中管理CSS

在大型Rails项目中处理CSS的一些好方法是什么?理想情况下,我希望能够为每个部分包含CSS或CSS文件的链接.

我已经玩过使用content_for和yield,它允许我将CSS插入到页面的头部,其中部分位于其他地方,但是一些部分被多次使用会导致样式链接加倍.

我理想的解决方案是能够在每个部分插入样式表链接标记,然后在生产中将这些链接整理成一个仅包含一次的大样式表.

css ruby-on-rails partials

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

Rails 3嵌套Partials,Collections,Locals(Rails教程第2版:第10章,练习5)

通过Michael Hartl的Rails教程第2章第10章练习5,我遇到了部分和集合的问题,并在部分内部使用了部分.

第10章,练习5指出: "使用partials,消除清单10.46和清单10.47中删除链接中的重复."

代码清单10.46:app/views/microposts/_micropost.html.erb

<li>
  <span class="content"><%= micropost.content %></span>
  <span class="timestamp">
    Posted <%= time_ago_in_words(micropost.created_at) %> ago.
  </span>
  <% if current_user?(micropost.user) %>
    <%= link_to "delete", micropost, method:  :delete,
                                     confirm: "You sure?",
                                     title:   micropost.content %>
  <% end %>
</li>
Run Code Online (Sandbox Code Playgroud)

代码清单10.47:app/views/shared/_feed_item.html.erb

<li id="<%= feed_item.id %>">
  <%= link_to gravatar_for(feed_item.user), feed_item.user %>
    <span class="user">
      <%= link_to feed_item.user.name, feed_item.user %>
    </span>
    <span class="content"><%= feed_item.content %></span>
    <span class="timestamp">
      Posted <%= time_ago_in_words(feed_item.created_at) %> ago.
    </span>
  <% if current_user?(feed_item.user) %>
    <%= link_to "delete", feed_item, method:  :delete, …
Run Code Online (Sandbox Code Playgroud)

collections partials ruby-on-rails-3 railstutorial.org

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

MissingTemplate:在Rails 3.2.3中渲染部分

嗨,我是Ruby on Rails的新手,我正在网上关注Michael Hartl的书.在局部模板他的书的部分.他用来渲染部分的代码是

<%= render 'layouts/stylesheets' %>

但是我得到了这个错误.

我读了API并尝试了这个

<%=render :partial => "/layouts/stylesheets" %>
但仍然无法想象这一个.

感谢您的帮助!

render actionview partials missing-template ruby-on-rails-3.2

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

渴望从嵌套的部分加载

宝石子弹说我在装载到页面的每餐食物加载meal_foods时出现N + 1错误.让我解释...

在我的rails应用程序中,我有一些嵌套的部分呈现如下:

膳食>膳食...

因此,呈现多餐,然后对于每个呈现的餐,其中相应的餐食也在其中呈现(如果有的话).

这是代码.

在用餐/秀中:

<% if @meals != nil %>
   <%= render(partial: "meal", collection: @meals) %>
<% else %>
   <p style="text-align:center">No meals created yet.</p>
<% end %>  
Run Code Online (Sandbox Code Playgroud)

这是在_meals.html.erb中

<tbody>
  <%= render(partial: "meal_foods/meal_food", collection: meal.meal_foods) %>
</tbody>
Run Code Online (Sandbox Code Playgroud)

最后,这是_meal_foods.html.erb的一部分

<td class="left"><%= meal_food.name %></td>
<td class="left">
  <%= form_for meal_food, action: :update do |f| %>
    <%= f.text_field :servings %>
  <% end %>
</td>  
Run Code Online (Sandbox Code Playgroud)

膳食控制器:

def show
  @meals      = current_client.meals    
  @new_meal   = current_client.meals.build
end 
Run Code Online (Sandbox Code Playgroud)

具体错误:

N+1 Query detected
  Meal => [:meal_foods] …
Run Code Online (Sandbox Code Playgroud)

ruby-on-rails partials eager-loading ruby-on-rails-4

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