2012-03-09 4 views
0

в мой контроллер data_feed и бар действия, есть только одна строка в bar.html.erb:почему моя страница рельсов всегда показывает html-главы?

[1,2,3,4] 

Мой ожидаемый результат, запрашивая http://localhost:3000/data_feed/bar только одна линия, которую я написал выше.

Однако рельсы помочь мне добавить некоторые HTML головы в эту страницу, как показано ниже:

<!DOCTYPE html> 
<html> 
<head> 
<title>Guustock</title> 
<link href="/assets/application.css?body=1" media="all" rel="stylesheet" type="text/css" /> 
<link href="/assets/charts.css?body=1" media="all" rel="stylesheet" type="text/css" /> 
<link href="/assets/data_feed.css?body=1" media="all" rel="stylesheet" type="text/css" /> 
<link href="/assets/show.css?body=1" media="all" rel="stylesheet" type="text/css" /> 
<script src="/assets/jquery.js?body=1" type="text/javascript"></script> 
<script src="/assets/jquery_ujs.js?body=1" type="text/javascript"></script> 
<script src="/assets/charts.js?body=1" type="text/javascript"></script> 

<script src="/assets/data_feed.js?body=1" type="text/javascript"></script> 
<script src="/assets/show.js?body=1" type="text/javascript"></script> 
<script src="/assets/application.js?body=1" type="text/javascript"></script> 
<meta content="authenticity_token" name="csrf-param" /> 
<meta content="lhHWCW82xtqQ8fmgBZemDggL2DGJe+4chXM8MY1LKvs=" name="csrf-token" /> 
</head> 
<body> 
[1,2,3,4] 

Как я могу избежать рельсов делать это? Спасибо!

Env: Linux Mint 11,0 рубин 1.9.3 с РВМ рельсы 3.2.1

EDIT:

На самом деле я хочу, чтобы предоставлять данные в формате JSON на этой странице, как АЯКС источника данных. Поэтому эти главы не помогут, но сломают данные.

ответ

2

Возможно, вы создаете в макете (шаблон просмотра, который находится в приложении/views/layouts /), который является значением по умолчанию. Если вы хотите выполнить действие без макета, используйте что-то вроде

render :bar, :layout => false 

в соответствующем действии.

Смотрите также: http://guides.rubyonrails.org/layouts_and_rendering.html

EDIT:

Пожалуйста, обратитесь к документации, связанной выше. Для оказания JSON, вы можете использовать это непосредственно от контроллера:

render :json => @product 

или в случае

render :json => [1,2,3,4] 

Вы также можете использовать шаблоны просмотра JSON (для которого вы должны будете снова визуализации). Использование шаблона bar.html.erb для json не только сложно, как вы заметили, но также создает неправильные заголовки типов контента.

+0

Большое спасибо! json render работает отлично! – nttstar

Смежные вопросы