Editor JSON basado en GUI o Web que funciona como explorador de propiedades [cerrado]

217

Antecedentes: esta es una solicitud de algo que puede no existir todavía, pero he tenido la intención de construir uno durante mucho tiempo. Primero preguntaré si alguien ha visto algo así todavía.

Suponga que tiene una estructura JSON arbitraria como la siguiente:

{
    'title_str':'My Employee List'
    ,'lastmod_str': '2009-June-15'
    ,'employee_table':[
        {'firstname':'john','lastname':'doe','age':'33',}
        ,{'firstname':'jane','lastname':'doe','age':'34',}
        ,{'firstname':'samuel','lastname':'doe','age':'35',}
    ]
}

Pregunta: ¿Existe un editor JSON basado en la web que podría adoptar una estructura como esta y permitir automáticamente al usuario modificar esto en una GUI fácil de usar?

Ejemplo: imagine un formulario HTML generado automáticamente que muestra 2 controles de texto de tipo de entrada para el título y lastmod, y una tabla de controles de texto de tipo de entrada con tres columnas y tres filas para arr_list ... con la capacidad de eliminar o agregue filas adicionales haciendo clic en un [+] [X] junto a cada fila de la tabla.

Gran idea: La "gran idea" detrás de esto es que el usuario podría especificar cualquier estructura JSON arbitraria (no recursiva) y luego también podría editar la estructura con una interacción basada en GUI (esto sería similar al "Vista de cuadrícula del editor XML" en XML Spy).

Ver también:

Actualización: (jue 2014-07-31 18:31:11)

Se ha creado un repositorio github para seguir este post SO cerrado.

dreftymac
fuente
¿Tienes algún progreso en la construcción de un editor propio? Estaba buscando lo mismo. Lo que he encontrado en la red son casi los mismos que enumeró en su respuesta.
Sinan
No. Parece una idea bastante buena sin suficiente impulso.
dreftymac
si obtengo suficiente impulso, me encantaría escribir mi primera aplicación de cacao para eso, si no pides derechos de autor;)
Sinan
1
Soy demasiado pequeño para poner un muro alrededor de cualquiera de mis ideas, y esto se ha hecho antes de todos modos :) ... eche un vistazo al editor de vista de cuadrícula XMLSPY si decide abordar esto y necesita inspiración adicional: altova .com / xmlspy / xml-grid-view.html
dreftymac
He estado pensando en esto, y encontré tu pregunta al verificar si había demanda. cuando se verifica si hubo demanda de armar un prototipo
13ren

Respuestas:

334

Actualización: en un esfuerzo por responder mi propia pregunta, esto es lo que he podido descubrir hasta ahora. Si alguien más tiene algo, todavía estaría interesado en obtener más información.

Basado en el esquema JSON

Comercial (sin respaldo intencionado o implícito, puede o no cumplir con el requisito)

jQuery

Ñame

Ver también

dreftymac
fuente
1
¡Form Builder hecho con Freja se ve increíble! Aunque esto (casi) no tiene nada que ver con la pregunta ...: P
cregox
1
@Cawas Se ve increíble. Es sorprendente, pero hay varios excelentes constructores de formas: uno (wufoo) fue adquirido recientemente por ... $ 35 millones news.ycombinator.com/item?id=2481576
13ren
14
+1 para jsoneditoronline.org Aquí está GIT de este proyecto - github.com/wjosdejong/jsoneditoronline
FDisk
3
jsoneditoronline git link ya no funciona.
argyle
44
@jeromeyers: Tienes razón, así que he encontrado el enlace del proyecto de trabajo aquí: https://github.com/josdejong/jsoneditor
Mehul Joisar
3

En general, cuando quiero crear una cadena JSON o YAML, empiezo construyendo la estructura de datos de Perl y luego ejecutando una conversión simple en ella. Puede poner una interfaz de usuario frente a la generación de la estructura de datos de Perl, por ejemplo, un formulario web.

Convertir una estructura a JSON es muy sencillo:

use strict;
use warnings;
use JSON::Any;

my $data = { arbitrary structure in here };
my $json_handler = JSON::Any->new(utf8=>1);
my $json_string = $json_handler->objToJson($data);
Éter
fuente
Gracias, pero tampoco estoy familiarizado con las formas perl. ¿Alguna recomendación para un creador de formularios simple? Realmente es solo una parte muy pequeña de un proyecto en el que estoy trabajando, así que no me gusta pasar mucho tiempo construyendo el formulario / IU en lugar de la lógica y el algoritmo reales que estoy escribiendo :)
David B