0

我正在寻找有关构建以下内容的一些建议。

我想显示一个页面。可以创建或更新 3 个事件。每个事件都有一个特定的名称(打开、关闭、开始)

我希望用户能够创建 1 个或所有 3 个事件。

返回到相同的 url 后,我希望显示创建的事件以供用户更新,并且未创建的事件可用于创建。

例如。

用户访问事件/新

创建事件 - (称为打开)

关闭和启动无操作。

返回事件/新

显示事件(打开)值。要被更新。

可以新建事件关闭和开始。

你会如何构建这个?我玩弄了实现 find_or_create 方法的想法。是否应该将其放置在控制器的创建操作中,以替换 .create(params[:eg])?

非常感谢

罗斯

4

2 回答 2

1

您可以在任何动作中执行此操作,看起来您正在尝试将shownew动作组合为单个动作。我会在一些自定义操作中处理它,然后操纵视图以显示带有指向 eidt 的链接的对象的详细信息,以防有人试图编辑对象,如果对象不存在,那么只显示创建对象的表单而不是显示详细信息和编辑链接。

于 2012-05-17T14:36:04.887 回答
0

在您的控制器中 - EventsController:

class EventsController < ApplicationController

  def new
    @event = Event.new
    @events_created = Event.all # to show the events created

在您看来 - events/new.html.haml:

- @events_created.each do |created_event|
  %p= "Event: " created_event.title

= form_for @event do |f|
  =.... # new event creation form
于 2012-05-18T06:21:23.290 回答