8

W Rails i CakePHP1.2 postacie wydają się zawierać elementy wejściowe o nazwach takich jak następujący:Nazwy HTML konwencji forma nazewnictwa

<input name="comment[author]" /> 

Czy istnieje formalna nazwa dla notacji stosowanej w atrybucie „nazwa” ?

Podobnie w CakePHP1.1 wierzę, że to samo będzie wyglądał tak:

<input name="comment/author" /> 

Ponownie, istnieje formalna nazwa dla notacji stosowanej w „nazwa” atrybutu?

+0

Nie sądzę, że pierwotnie miał nazwę, gdy pochodzi z PHP. Było to postrzegane jedynie jako powielanie formatu dereferencji w języku "a [b]".Od tego czasu wyodrębniono tablicę PHP wymagającą wyceny ('a ['b']'), ponieważ w przeciwnym razie jest tak straszliwie niejednoznaczna, ale format "nazwa" nie został zaktualizowany tak, aby pasował. Niektóre inne środowiska przyjęły składnię PHP, ale jest tyle samo, co inne alternatywy (np. 'A.b'). – bobince

+0

Nazywam to "przestrzenią nazw", ponieważ utworzy to żądanie-> tablica danych z określonymi kluczami. W tym przypadku jest to rzeczą specyficzną dla CakePHP, aby zrobić to w ten sposób. Więc nie ma sensu porównywać go z innymi, ani czynić z tego ogólnego rodzaju IMO. – mark

Odpowiedz

1

w ciastko php, schemat nazewnictwa jest wielowymiarowym formatem dostępu do tablic, choć nie jestem pewien, co by to nazwać. wielowymiarowe kluczowanie w tablicy?

official php docs nazywają to „zapis kwadratowy nawias”

Zasadniczo, nie jestem pewien, że CakePHP ma specyficzną nazwę dla tego ... To dlatego, że jest to po prostu „notacja wspornik” na wpust dostępu do tablicy.

Here's an example from the cakephp docs. Przedstawia elementy nazewnictwa z notacją nawiasową w cakephp i sposób, w jaki jest używany do wstępnego wypełniania wartości.

stosując placek php FormHelper się tworzyć pole ukryte ID:

echo $this->Form->hidden('id'): 

to wysyła następujące:

<!-- data comes from $this->request->data --> 
<input name="data[User][id]" id="UserId" type="hidden" /> 

Zakładając, że wartości utrzymywanej przez data[User][id] jest 10, wkład z identyfikatorem UserId będzie mieć wartość 10.

+0

Jeśli możesz podać cytat, zielony tyk jest twój. –

4

W Railsach jest to nazywane mikroformatem formularzy (przynajmniej przez niektórych). Wiele różnych frameworków wydaje się standaryzować w tym pierwszym formacie. Mogę sobie wyobrazić, że CakePHP zaktualizował swoje biblioteki, aby dostosować się do tego standardu. Dostępna jest an obsessively in-depth explanation, która jest tylko trochę specyficzna dla Railsów. Oryginalny mikroformat najwyraźniej pochodzi z PHP.

0

W Railsach wartość łańcucha przypisana do atrybutu name w elemencie formularza jest przekazywana do kontrolera jako skrót w haszu params[] indeksowanym przez klucz.

<input name="username"/> 

Pojawi się w kontrolerze jako params[:username].

<input name="user[name]"/> 

Pojawi się w kontrolerze jako params[:user][:name].

I tak dalej. Jeśli chcesz przeczytać więcej o tym, jak je wygenerować i czego się spodziewać, zapoznaj się z dokumentacją ActionView i ActionController. Jest to link do ActionController overview, który jest świetnym przewodnikiem.

+0

Moje pytanie nie dotyczy tego, jak interpretowane są imiona, ale chodzi o termin używany do opisania tej konwencji lub formatu nazewnictwa. –