2013-03-07 71 views
0

我在this tutorial(无脚手架)之后创建了应用程序。仅显示所需的参数

当我创建一个项目后,我可以点击它并显示一个大的参数列表。像这样:http://s15.postimage.org/j6at9koiz/parameters.png

这确实代码是:

<% if (todos && todos.length) { %> 
    <% for (var i in todos) { %> 
    <div class="row todo-item"> 
    <div class="span8"> 
     <h3><%- linkTo(todos[i].title, todoPath(todos[i].id)) %></h3> 
    </div> 
    <div class="span4"><h3><i class="icon-list-alt"></i><%= todos[i].status; %></h3></div> 
    </div> 
    <% } %> 
<% } %> 

更具体地讲,下面一行是显示与带我去每个项目的参数列表标题的链接之一:

<%- linkTo(todos[i].title, todoPath(todos[i].id)) %> 

我可以做些什么来只显示一些参数,而不是显示现在显示的整个列表吗?

谢谢!

回答

1

您需要为待办事项资源添加查看文件。如果你脚手架,然后geddy默认创建它们。但除此之外,您必须在app/views/todos中添加待办事项的查看文件。

查看文件

  • _form.html.ejs
    • 编辑/新形式
  • add.html.ejs
    • 新的资源观
    • /todos/add
  • edit.html.ejs
    • 编辑视图
    • /todos/:id/edit
  • index.html.ejs
    • 索引视图
    • /todos
  • show.html.ejs
    • 显示个别资源
    • /todos/:id

您可以手动编辑它们。对于更改个人待办事项应该如何出现在/todos/:id路线,编辑show.html.ejs

<div class="hero-unit"> 
    <%- linkTo('Edit this todo', editTodoPath(params.id), {class: 'btn pull-right'}); %> 
    <h3>Params</h3> 
    <ul> 
    <li>todo.title</li> 
    <li>todo.property1</li> 
    <li>todo.property2</li> 
    </ul> 
</div> 
+0

,我怎么只能显示在模型中定义的参数? – 2013-03-07 18:08:22

+0

所以没有东西可以做到这一点自动?...一个函数或东西,只返回模型的字段或返回一个布尔值检查参数是否是从模型? – 2013-03-07 20:21:47

+0

你的想法也很好,但是我通过创建一个具有所需参数的数组来实现它,然后检查当前参数是否在该数组中,如果是,则它是diplayed – 2013-03-08 13:53:19