2009-06-15 46 views
191

Bối cảnh: Đây là yêu cầu cho một thứ chưa tồn tại nhưng tôi đã có ý định xây dựng nó trong một thời gian dài. Đầu tiên tôi sẽ hỏi nếu có ai đã nhìn thấy bất cứ điều gì như nó chưa.Trình soạn thảo JSON dựa trên GUI hoặc dựa trên web hoạt động giống như trình khám phá thuộc tính

Giả sử bạn có một cấu trúc JSON tùy ý như sau:

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

Câu hỏi: Có một trình soạn thảo JSON dựa trên web mà có thể mất một cấu trúc như thế này, và tự động cho phép người dùng thay đổi này trong giao diện người dùng thân thiện?

Ví dụ: Hãy tưởng tượng biểu mẫu HTML được tạo tự động hiển thị 2 điều khiển kiểu nhập văn bản cho cả tiêu đề và lastmod và bảng điều khiển kiểu nhập văn bản với ba cột và ba hàng cho arr_list .. với khả năng xóa hoặc thêm hàng bổ sung bằng cách nhấp vào [+] [X] bên cạnh mỗi hàng trong bảng.

Big Idea: Các "ý tưởng lớn" đằng sau này là người dùng sẽ có thể chỉ định bất kỳ tùy ý (không đệ quy) cấu trúc JSON và sau đó cũng có thể chỉnh sửa cấu trúc với một tương tác dựa trên GUI (điều này sẽ tương tự như "XML Editor Grid View" trong XML Spy).

Xem thêm:

Cập nhật: (Thu 2014-07-31 18:31:11)

Một kho github đã được tạo ra để tiếp tục theo dõi bài SO này.

+3

Ý tưởng tốt, bạn có thể kiếm được nhiều tiền! Xin chúc mừng! –

+0

Bạn có bất kỳ tiến bộ nào trong việc xây dựng trình chỉnh sửa của riêng mình không? tôi đang tìm kiếm điều tương tự. Những gì tôi đã tìm thấy trên mạng là gần như giống nhau như bạn liệt kê trên câu trả lời của bạn. – Sinan

+0

Không. Nó có vẻ như là một ý tưởng đủ tốt với không đủ động lực đằng sau nó. – dreftymac

Trả lời

280

Cập nhật: Trong một nỗ lực để trả lời câu hỏi của riêng tôi, đây là những gì tôi đã có thể phát hiện ra cho đến nay. Nếu bất cứ ai khác ngoài kia có điều gì đó, tôi vẫn muốn tìm hiểu thêm.

Dựa trên JSON Schema

thương mại (Không ủng hộ dự định hay ngụ ý, có thể hoặc có thể không đáp ứng yêu cầu)

Xem Cũng

+1

[Trình tạo biểu mẫu] (http://app.formassembly.com/form-builder3.4.2/?) được tạo bằng Freja trông thật tuyệt vời! Mặc dù đây là (gần như) hoàn toàn không liên quan đến câu hỏi ...: P – cregox

+1

@Cawas Nó trông thật tuyệt vời. Thật đáng ngạc nhiên, nhưng có một số nhà xây dựng hình thức xuất sắc - một (wufoo) gần đây đã được mua lại ... $ 35 triệu http://news.ycombinator.com/item?id=2481576 – 13ren

+0

@ 13ren damn, tôi đã không bao giờ nhận ra có một thị trường như vậy đằng sau tất cả điều này! – cregox

3

Nói chung khi tôi muốn tạo một JSON hoặc YAML chuỗi, tôi bắt đầu bằng cách xây dựng cấu trúc dữ liệu Perl, và sau đó chạy một cách đơn giản chuyển đổi trên đó. Bạn có thể đặt giao diện người dùng ở phía trước thế hệ cấu trúc dữ liệu Perl, ví dụ: một mẫu web.

Chuyển đổi một cấu trúc JSON là rất đơn giản:

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); 
+0

Cảm ơn, nhưng tôi cũng không quen với các hình thức perl. Bất kỳ đề xuất nào cho một nhà sản xuất biểu mẫu đơn giản? Nó thực sự chỉ là một phần rất nhỏ của một dự án tôi đang làm việc vì vậy tôi không muốn dành quá nhiều thời gian vào việc xây dựng biểu mẫu/UI thay vì logic thực và thuật toán tôi đang viết :) –

Các vấn đề liên quan