| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Perl: Общие вопросы > 'Class::Accessor |
| Автор: gcc 8.4.2009, 01:04 | ||||
поясните что это за строка? и в чем смысл? не могу понять оно какие-то медоты инициализирует от куда-то?
|
| Автор: arto 8.4.2009, 02:09 |
| perldoc perldata |
| Автор: gcc 8.4.2009, 02:32 | ||
полезная информация, но по сабжу там не нашел, а в документации модуля Class::Accessor наверное что-то не так перевел с анлийского вот не много другое чем в примере до этого, в чем смысл этой записи? |
| Автор: arto 8.4.2009, 08:45 |
| # perldoc perldata ... Special Literals The special literals __FILE__, __LINE__, and __PACKAGE__ represent the current filename, line number, and package name at that point in your program. They may be used only as separate tokens; they will not be interpolated into strings. If there is no current package (due to an empty "package;" directive), __PACKAGE__ is the undefined value. ... |
| Автор: NuINu 8.4.2009, 09:47 |
это не соответствует коду который в классе, смотри внимательнее там: создает метод filename позволяющий читать поле filename тобишь $post->filename используется для упрощения конструкции $post->{'filename'} при этом данное обявление не позволяет изменять значение этого поля. зы: эскперименты не приводил, так что попробуй сам. |
| Автор: gcc 9.4.2009, 05:17 |
| arto, извените я не правильно задал вопрос, мне надо было mk_accessors(qw(filename)); я сначало не понял в каких ситуациях оно лучше NuINu, вроде бы разобраля |
| Автор: gcc 9.4.2009, 18:43 | ||||
| нет, не понял пакет:
вызывается:
пишет: "Can't call method "sql" метода sql нету вот не много только есть: http://perladvent.pm.org/2004/3rd/ http://kiev.pm.org/node/219 |
| Автор: NuINu 9.4.2009, 18:59 | ||
ну внимательней смотри
ты же переопределил переменную. |
| Автор: gcc 23.4.2009, 10:37 | ||||||||||
| сейчас решил не много переделать по другому свой класс для валидации форм (perltidy)
вызываю так:
ругается:
на строку:
из:
как тут можно по другому написать? или без Class::Accessor надо? как только закомментировать my $valid_id = $self->valid_id; то работает |
| Автор: gcc 23.4.2009, 12:20 | ||
| сделал вроде бы работает там нельзя наверное чтобы метод назывался так как ассесор
|
| Автор: ginnie 23.4.2009, 14:15 |
| gcc, открою страшную тайну: аксессор - тоже метод, в Perl, конечно, два разных метода в одном пространстве имен одинаковое имя иметь не могут. |
| Автор: gcc 22.7.2009, 02:44 | ||||||
| нашел полезные вещи с Class::Accessor только это Class::Data::Inheritable жалко раньше не видел подобого...
|