246

背景:这是对可能尚不存在的东西的请求,但我一直想建造一个。首先,我会问是否有人见过类似的东西。

假设您有一个任意 JSON 结构,如下所示:

{
    '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',}
    ]
}

问题:是否有基于 Web 的 JSON 编辑器可以采用这样的结构,并自动允许用户在用户友好的 GUI 中对其进行修改?

示例:想象一个自动生成的 HTML 表单,它显示 2 个用于 title 和 lastmod 的 input-type-text 控件,以及一个包含三列和三行 arr_list 的 input-type-text 控件表......具有删除功能或通过单击表格中每一行旁边的 [+][X] 添加其他行。

大创意:这背后的“大创意”是用户将能够指定任意(非递归)JSON 结构,然后还能够使用基于 GUI 的交互来编辑结构(这将类似于XML Spy 中的“XML 编辑器网格视图”)。

也可以看看:

更新:(2014-07-31 星期四 18:31:11)

已创建一个 github 存储库以进一步跟踪此已关闭的 SO 帖子。

4

2 回答 2

368

更新:为了回答我自己的问题,这是我迄今为止能够发现的。如果其他人有什么东西,我仍然有兴趣了解更多。

基于 JSON 模式

商业(没有有意或暗示的背书,可能满足也可能不满足要求)

jQuery

YAML

也可以看看

于 2009-06-16T00:31:02.797 回答
4

通常,当我想创建 JSON 或 YAML 字符串时,我会先构建 Perl 数据结构,然后对其进行简单的转换。您可以在 Perl 数据结构生成之前放置一个 UI,例如一个 Web 表单。

将结构转换为 JSON 非常简单:

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);
于 2010-07-30T16:14:03.110 回答