Google Groups Home
Help | Sign in
Seaside
There are currently too many topics in this group that display first. To make this topic appear first, remove this option from another topic.
There was an error processing your request. Please try again.
flag
  7 messages - Collapse all
The group you are posting to is a Usenet group. Messages posted to this group will make your email address visible to anyone on the Internet.
Your reply message has not been sent.
Your post was successful
Victor Metelitsa  
View profile
 More options Apr 17 2006, 5:47 am
Newsgroups: fido7.ru.smalltalk
From: Victor Metelitsa <v...@cssc.tat.ru>
Date: Mon, 17 Apr 2006 09:47:28 +0000 (UTC)
Local: Mon, Apr 17 2006 5:47 am
Subject: Seaside
Решил наконец заняться Seaside вплотную, потому что у меня изменилось
отношение к этому софту - я стал ценить своё удобство разработки намного
выше удобства пользователей (я имею в виду букмарки и цвет посещённых
линков - поскольку URL постоянно меняется, то эта фича не работает).
Написал для пробы маленький форум (VW4 + последний Seaside с Cincom'а).

Первое, с чем я столкнулся - Seaside принудительно меняет кодировку на
utf8, а WebToolkit имеет какие-то проблемы с разбором ввода на utf8. Не
стал разбираться, что у WebToolkit'а не так, а проверрайдил пару-тройку
методов Seaside с тем, чтобы для HTML использовалась Windows-1251.

Второе - непонятно, как записать заголовок
(<html><head><title>ЗАГОЛОВОК...) - я думал, что достаточно перекрыть
WAComponent>>title, но оно не работает.

Третье - updateUrl: aUrl
У меня главный компонет пишет

updateUrl: aUrl
        currentChild updateUrl: aUrl

а подчинённый (присвоенный currentChild)
updateUrl: aUrl

        aUrl addParameter: 'forumId' value: forumId printString.
        aUrl addParameter: 'Type' value: 'ThreadList'.
или
updateUrl: aUrl

        aUrl addParameter: 'threadId' value: threadId printString.
        aUrl addParameter: 'Type' value: 'PostList'.
или
updateUrl: aUrl

        aUrl addParameter: 'Type' value: 'ForumList'.
(в зависимости от класса currentChild)

Я ожидал, что значения в url будут меняться, но они, появляясь,
"липнут", не исчезая более и не меняя значения, напр.,

http://127.0.0.1:8008/seaside/go/vvmUbb?Type=PostList&threadId=235&fo...

когда мной ожидалось Type=ForumList, а &threadId=235&forumId=8 не должно
было быть вовсе.

или
http://127.0.0.1:8008/seaside/go/vvmUbb?Type=ForumList&forumId=15&thr...

когда мной ожидалось Type=PostList&threadId=1256

--
Отправлено через сервер Форумы@mail.ru - http://talk.mail.ru


    Reply to author    Forward  
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Victor Metelitsa  
View profile
 More options Apr 17 2006, 6:50 am
Newsgroups: fido7.ru.smalltalk
From: Victor Metelitsa <v...@cssc.tat.ru>
Date: Mon, 17 Apr 2006 10:50:53 +0000 (UTC)
Local: Mon, Apr 17 2006 6:50 am
Subject: Re: Seaside

Victor Metelitsa wrote:

> Второе - непонятно, как записать заголовок
> (<html><head><title>ЗАГОЛОВОК...) - я думал, что достаточно перекрыть
> WAComponent>>title, но оно не работает.

МойКомпонент>>updateRoot: anHtmlRoot
        super updateRoot: anHtmlRoot.
        anHtmlRoot title: self title.

--
Отправлено через сервер Форумы@mail.ru - http://talk.mail.ru


    Reply to author    Forward  
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Victor Metelitsa  
View profile
 More options Apr 17 2006, 7:12 am
Newsgroups: fido7.ru.smalltalk
From: Victor Metelitsa <v...@cssc.tat.ru>
Date: Mon, 17 Apr 2006 11:12:08 +0000 (UTC)
Local: Mon, Apr 17 2006 7:12 am
Subject: Re: Seaside

Я показываю currentChild, но предыдущих "детей" накапливаю в IdentitySet
и отдаю по сообщению child, ибо Seaside они зачем-то нужны. Seaside же
просит их updateUrl: тоже, что и приводит к неожиданному результату.
Пока что я поставил подкомпонентам проверку

updateUrl: aUrl

        self == owner currentChild ifFalse: [^self].
и так далее.

--
Отправлено через сервер Форумы@mail.ru - http://talk.mail.ru


    Reply to author    Forward  
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Maxim Annenkov  
View profile
 More options Apr 17 2006, 7:16 am
Newsgroups: fido7.ru.smalltalk
From: "Maxim Annenkov" <m...@bbt.ru>
Date: Mon, 17 Apr 2006 11:16:11 +0000 (UTC)
Local: Mon, Apr 17 2006 7:16 am
Subject: Re: Seaside
Опиши потом свои впечатления. Я как-то смотрел в сторону Seaside и большого
восторга, это у меня не вызвало.
И самый главный вопрос, зачем его так написали, эти игры со стеком?
Насколько я понимаю, именно это препятствую его портации в VAST.

    Reply to author    Forward  
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Victor Metelitsa  
View profile
 More options Apr 17 2006, 7:31 am
Newsgroups: fido7.ru.smalltalk
From: Victor Metelitsa <v...@cssc.tat.ru>
Date: Mon, 17 Apr 2006 11:31:26 +0000 (UTC)
Local: Mon, Apr 17 2006 7:31 am
Subject: Re: Seaside

Victor Metelitsa wrote:
> Я показываю currentChild, но предыдущих "детей" накапливаю в IdentitySet
> и отдаю по сообщению child,

children

--
Отправлено через сервер Форумы@mail.ru - http://talk.mail.ru


    Reply to author    Forward  
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Victor Metelitsa  
View profile
 More options Apr 17 2006, 8:06 am
Newsgroups: fido7.ru.smalltalk
From: Victor Metelitsa <v...@cssc.tat.ru>
Date: Mon, 17 Apr 2006 12:06:57 +0000 (UTC)
Local: Mon, Apr 17 2006 8:06 am
Subject: Re: Seaside

Maxim Annenkov wrote:
> Опиши потом свои впечатления. Я как-то смотрел в сторону Seaside и большого
> восторга, это у меня не вызвало.
> И самый главный вопрос, зачем его так написали, эти игры со стеком?
> Насколько я понимаю, именно это препятствую его портации в VAST.

Меня просто заколебал ввод/редактирование с заранее неизвестным
количеством полей на одной форме. Предположим, у нас есть коллекция
заказов (orders), у которых есть подробности (orderDetails) (на самом
деле у меня нечто другое), атрибуты в примере пишу "от фонаря". Надо
построить
a) Форму ввода
b) Сохранение в базе
"Обычными" средствами для input-полей в форме ввода приходится
придумывать имена и забивать в них базоданновые ключи, потом заниматься
разбором, приходится писать уйму ручного кода. На Seaside дела выглядят
проще.

renderContentOn: html

html form: [
   orders do: [:eachOrder |
     html
       text: 'Заказчик: ';
       textInputWithValue: eachOrder personName
       callback: [:val | eachOrder personName: val].
     html break.
     html
       text: 'Дата: ';
       textInputWithValue: eachOrder date
       callback: [:val | eachOrder dateFromString: val].
     html break.
     eachOrder orderDetails do: [eachDetail |
       html
         text: 'Название: ';
         textInputWithValue: eachDetail name
         callback: [:val | eachDetail personName: val].
       html break.
     ].
     html horisontalRule
   ].
   html
     submitButtonWithAction: [owner currentChild: (VvmOrdersSaver new
orders: orders)]
     text: 'Сохранить'
]

имея в виду, что VvmOrdersSaver сохранит orders в базе при помощи
Glorp'а (считая на всякий случай, что порядок выполнения callback'ов не
определен, я думаю также, что когда у экземпляра VvmOrdersSaver будет
вызван renderContentOn:, они все уже будут выполнены).

--
Отправлено через сервер Форумы@mail.ru - http://talk.mail.ru


    Reply to author    Forward  
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Victor Metelitsa  
View profile
 More options Apr 17 2006, 8:13 am
Newsgroups: fido7.ru.smalltalk
From: Victor Metelitsa <v...@cssc.tat.ru>
Date: Mon, 17 Apr 2006 12:13:31 +0000 (UTC)
Local: Mon, Apr 17 2006 8:13 am
Subject: Re: Seaside
Victor Metelitsa wrote:
>     eachOrder orderDetails do: [eachDetail |
>       html
>         text: 'Название: ';
>         textInputWithValue: eachDetail name
>         callback: [:val | eachDetail personName: val].
>       html break.
>     ].
>     html horisontalRule

      eachOrder orderDetails do: [eachDetail |
        html
          text: 'Название: ';
          textInputWithValue: eachDetail name
          callback: [:val | eachDetail name: val].
        html break.
      ].
      html horisontalRule

--
Отправлено через сервер Форумы@mail.ru - http://talk.mail.ru


    Reply to author    Forward  
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
End of messages
« Back to Discussions « Newer topic     Older topic »

Create a group - Google Groups - Google Home - Terms of Service - Privacy Policy
©2008 Google