Откуда взялось это соглашение о параметрах Ruby?

Rails и другие фреймворки используют промежуточное программное обеспечение Ruby для синтаксического анализа параметров, отправленных на сервер, во вложенный объект Hash .

Если вы отправите эти параметры на сервер:

person[id] = 1
person[name] = Joe Blow
person[email] = joe.blow@test.com
person[address][street_address] = 123 Somewhere St.
person[address][city] = Chicago
person[address][zip] = 12345
person[other_field][] = 1
person[other_field][] = 2
person[other_field][] = 3

Они будут проанализированы следующим образом:

{
  :person => {
    :id => "1",
    :name => "Joe Blow",
    :email => "joe.blow@test.com",
    :address => {
      :street_address => "123 Somewhere St.",
      :city => "Chicago",
      :state => "IL",
      :zip => "12345"
    },
    :other_field => [ 1, 2, 3 ]
  }
}

Я считаю, что это также поддерживается PHP. Может ли кто-нибудь сказать мне, как называется это соглашение, откуда оно взялось и какие другие языки его поддерживают? (Perl, Python и т. Д.)

7
задан Adam Lassek 28 September 2011 в 05:57
поделиться