Список форумов Cake-PHP.ru Cake-PHP.ru
Форум программистов CakePHP
(на сайт)
 
 Watched TopicsWatched Topics   FAQFAQ   ПоискПоиск   ПользователиПользователи   ГруппыГруппы   РегистрацияРегистрация 
 ПрофильПрофиль   Войти и проверить личные сообщенияВойти и проверить личные сообщения   ВходВход 

Непонимание с подстановкой данных из БД

 
Начать новую тему   Ответить на тему    Список форумов Cake-PHP.ru -> Общий
Предыдущая тема :: Следующая тема  
Автор Сообщение
vasy@

цитировать



Зарегистрирован: 21 Дек 2007 12:11:24
Сообщения: 11
Откуда: Одесса

СообщениеДобавлено: 08 Янв 2008 16:53:53    Заголовок сообщения: Непонимание с подстановкой данных из БД Ответить с цитатой

Представим, что:
Код:

<?php
class Order extends AppModel {
   var $name = 'Order';
   var $primaryKey = 'order_id';
   var $belongsTo = array(
         'Firm' =>
            array('className' => 'Firm',
                  'foreignKey' => 'firm_id',
                  'conditions' => '',
                  'fields' => '',
                  'order' => '',
                  'counterCache' => ''
            ),

         'Magazin' =>
            array('className' => 'Magazin',
                  'foreignKey' => 'magazin_id',
                  'conditions' => '',
                  'fields' => '',
                  'order' => '',
                  'counterCache' => ''
            )
   );

}
?>   


при этом в базе данных в таблице "Firms" присутствует поле "name", а в таблице "Magazins" присутствует поле "short_name".

При добавлении в "order" в поле Firm присутствует выпадающий список, в котором находятся данные из Firms.name, а в Magazin в свою очередь magazins.magazin_id. (надеюсь понятно написал)

Вопрос - как сделать так, чтобы происходила подстановка данных из необходимого мне поля, в данном случае magazins.short_name?
Вернуться к началу
Посмотреть профиль Отправить личное сообщение MSN Messenger
Антон Исайкин
Site Admin
цитировать



Зарегистрирован: 08 Окт 2007 12:02:56
Сообщения: 150
Откуда: Санкт-Петербург

СообщениеДобавлено: 08 Янв 2008 18:10:37    Заголовок сообщения: Ответить с цитатой

В модели Magazin вам необходимо задать переменную
Код:
var $displayField = 'name';

name - это то поле, которое необходимо подставлять при скаффолдинге.
Вернуться к началу
Посмотреть профиль Отправить личное сообщение Посетить сайт автора
vasy@

цитировать



Зарегистрирован: 21 Дек 2007 12:11:24
Сообщения: 11
Откуда: Одесса

СообщениеДобавлено: 08 Янв 2008 18:59:41    Заголовок сообщения: Ответить с цитатой

Я не имею в виду скаффолдинг.

Как я понял, если в таблице есть столбец с название "name", то данные берутся из него и вставляются в выпадающий список. Если же такого столбаца нет, то берётся $primaryKey.

Т.е. если в таблице Firms присутствуют:
Код:

firm_id   int(10)
name   varchar(50)

а в таблице Magazins:
Код:

magazin_id   int(3)
name_short   char(5)


то в поле Фирмы будет список из названий(firms.name), а поле Журналы будет список циферок (magazin_id.magazin_id) Sad а хотелось бы magazins.short
Вернуться к началу
Посмотреть профиль Отправить личное сообщение MSN Messenger
Антон Исайкин
Site Admin
цитировать



Зарегистрирован: 08 Окт 2007 12:02:56
Сообщения: 150
Откуда: Санкт-Петербург

СообщениеДобавлено: 08 Янв 2008 19:04:29    Заголовок сообщения: Ответить с цитатой

Попробуйте сделать то, что я сказал.
Вернуться к началу
Посмотреть профиль Отправить личное сообщение Посетить сайт автора
vasy@

цитировать



Зарегистрирован: 21 Дек 2007 12:11:24
Сообщения: 11
Откуда: Одесса

СообщениеДобавлено: 08 Янв 2008 20:45:54    Заголовок сообщения: Ответить с цитатой

К сожелению ничего не произошло.
Видимо я что-то не то делаю.

А можно ли дать ссылку на источник(желательно русскоязычный, но не обязательно), где я могу подчерпнуть информацию по этому поводу ?
Вернуться к началу
Посмотреть профиль Отправить личное сообщение MSN Messenger
Борис

цитировать



Зарегистрирован: 08 Янв 2008 00:26:04
Сообщения: 8

СообщениеДобавлено: 08 Янв 2008 21:02:00    Заголовок сообщения: Ответить с цитатой

vasy@ писал(а):
К сожелению ничего не произошло.
Видимо я что-то не то делаю.

А можно ли дать ссылку на источник(желательно русскоязычный, но не обязательно), где я могу подчерпнуть информацию по этому поводу ?


/wiki/Manual11/scaffolding (в первом блоке)
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
vasy@

цитировать



Зарегистрирован: 21 Дек 2007 12:11:24
Сообщения: 11
Откуда: Одесса

СообщениеДобавлено: 08 Янв 2008 22:36:57    Заголовок сообщения: Ответить с цитатой

ужас...
Выговор мне с занесением в грудную клетку.

При изучении(которое и сейчас длится) бегло просмотрел статью и до конца не разобрался.
Всем спасибо, что ткнули в нужное место.
Вернуться к началу
Посмотреть профиль Отправить личное сообщение MSN Messenger
Имя
Сообщение

Смайлики
Very Happy Smile Sad Surprised
Shocked Confused Cool Laughing
Mad Razz Embarassed Crying or Very sad
Evil or Very Mad Twisted Evil Rolling Eyes Wink
Exclamation Question Idea Arrow
Дополнительные смайлики

 
Показать сообщения:   
Начать новую тему   Ответить на тему    Список форумов Cake-PHP.ru -> Общий Часовой пояс: GMT + 3
Страница 1 из 1

 
Перейти:  
Вы можете начинать темы
Вы можете отвечать на сообщения
Вы можете редактировать свои сообщения
Вы можете удалять свои сообщения
Вы не можете голосовать в опросах


Powered by phpBB © 2001, 2005 phpBB Group
Русская поддержка phpBB

Рейтинг@Mail.ru