2009-09-14 9 views
6

Cuando desarrolla aplicaciones web, especialmente aquellas que manejan una buena cantidad de administración de datos (por ejemplo, contactos, direcciones, pedidos, etc.), generalmente crea la interfaz como in-place edit o haga una página de "editar" por separado (y una página de solo lectura)?Inplace Editing vs. Edit Página

¿Por qué/cuál es la ventaja de una sobre la otra? Estoy tratando de tomar una decisión sobre mi propio proyecto que tiene dicha gestión de datos y no estoy seguro de qué camino tomar.

Respuesta

1

para cosas como configuración donde el uso principal para ver la página es editarla, en línea tiene sentido.

Después de eso, se trata más sobre el uso. Si las personas los están editando constantemente, entonces deberían estar en línea. Si es para decir detalles del usuario, donde se lee principalmente y a veces se cambia, esto es lo que hago:

La página se ve sin cuadros editables. Si el usuario desea cambiar alguna información, presiona un botón de edición Se muestra la misma página pero con campos editables y botones de cancelar/enviar.

puedo lograr esto por tener la vista decidir en base a un valor en el cubo de la propiedad de la versión de cada campo para mostrar, que se establece por la acción (MVC)

EDIT:

de muestra a lo solicitado (no probado)

en el controlador (castillo monorraíl), digamos que CustomerController:

public void View(int customerid) 
{ 
    PropertyBag["customer"] = Customer.Find(customerid); 
} 

public void Edit(int customerid) 
{ 
    PropertyBag["editing"] = true; 
    View(customerid); 
    RenderView("View"); 
} 

en la vista (braille):

<th>Name:</th> 
<td> 
    <% if IsDefined("editing"): %> 
    <input name="c.Name" value="$customer.Name" /> 
    <% else: %> 
    $customer.Name 
    <% end %> 
</td> 
+0

Tu respuesta es intrigante; ¿podría publicar algún código de muestra sobre cómo lo hizo (su última parte de la respuesta)?Eso sería inmensamente útil. ¡Gracias! – Alex

+0

muestra añadida arriba –

0

Yo diría que debe usar la edición in situ cuando la edición de los datos es directa y simple (a prueba de idiotas). No debería ser más complicado para el usuario que seleccionar texto en un procesador de texto y escribir sobre él.

Si necesita/desea mostrar etiquetas, instrucciones, mensajes de error, etc., probablemente debería utilizar una página de edición dedicada. O encuentre una forma inteligente de hacerlo en la página.

Además, a veces no se muestra exactamente lo que el usuario ingresó. Por ejemplo, muestra la edad del usuario, pero cuando lo edita muestra la fecha de nacimiento. Entonces, le sugiero que use una página de edición, ya que podría ser confundir al usuario.

3

Creo que la edición en línea tiene sentido cuando el 'costo de esfuerzo' de realizar el cambio es relativamente bajo.

Por ejemplo, cambiar una descripción en una foto es algo que es bastante fácil de hacer, hay poco riesgo si no es exactamente correcto, y el usuario espera hacerlo en contexto con la imagen que está editando. En ese caso, en línea tiene sentido para mí.

Por otro lado, en una aplicación donde el usuario necesita ayuda o guía a través de un proceso, o el cambio significa cambios importantes en el estado de facturación/envío/cuenta. Puede tener sentido tener una página separada para ayudarlos a comprender las ramificaciones completas de sus acciones.

Cuestiones relacionadas