2013-07-08 14 views
12

Zwykle glosuję ten błąd, gdy go otrzymuję i po prostu naprawię błąd składni, który spowodował to, ale z ciekawości, co dokładnie oznacza tLABEL w nieoczekiwanym tLABEL?W języku Ruby, co dokładnie oznacza tLABEL?

Próbowałem znaleźć odpowiedź, ale wystarczy, że dostanę mnóstwo osób, które próbują uzyskać pomoc w swoich błędach.

Ja również znaleźć tę definicję:

TLabel jest nonwindowed kontrola VCL, który wyświetla non edytowalny tekst na formularza. Jest zdefiniowany w jednostce StdCtrls.pas.

ale nie sądzę, że jest to bardzo przystępna definicja.

+1

To pytanie dotyczy języka Ruby i nie jest specyficzne dla Railsów. Edytowane w celu odzwierciedlenia tego. – PinnyM

Odpowiedz

14

tLABEL jest „Etykieta” żeton. Jest to często stosowane przy określaniu mieszania w nowszym formacie 1.9:

{ key: value } 

W powyższym przykładzie key: wewnętrznie uznane za dowód na etykiety. Parser 1.9+ przekształca to w symbol, podczas gdy parser 1.8 nie.

Wystąpił błąd w miejscu, w którym analizator składni znajduje to, co uważa za znacznik etykiety, a którego nie oczekuje.

Ponadto odniesienie do „kontroli” TLabel non-okienkowego jest bardzo związana - że TLabel klasa jest częścią Visual Component Library wykorzystywane przez Delphi, jak zasugerował przez (Pascal) rozszerzenie .pas.

+0

Niesamowita odpowiedź i dokładnie to, czego szukałem. Dziękuję Ci! – Arel

1

Przykładem że błąd się dzieje, ponieważ istnieją przestrzenie pomiędzy dwukropkiem, należy ActiveRecord::Base zamiast ActiveRecord: :Base

+0

Rozumiem, dlaczego tak się dzieje i zazwyczaj jak to naprawić. Szukałem bardziej szczegółowej definicji tLABEL. – Arel