С Новым годом! Форум программистов, компьютерный форум, киберфорум
PHP: Symfony
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.50/12: Рейтинг темы: голосов - 12, средняя оценка - 4.50
130 / 15 / 6
Регистрация: 05.08.2013
Сообщений: 285

Symfony2, работа с типом Collection, работа с базовой формой

18.11.2014, 15:49. Показов 2243. Ответов 2
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте.
Осваиваю создание CRUD приложения на Symfony 2, на примере.
Однако, возникают ошибки:
1)При модификации шаблона изменения новости:

должно получиться так:

но у меня осталась кнопка create:

Примечание:Этот рисунок содержит больше элементов, чем в примере т.к. это конечный вариант задания, я не стал откатывать до момента изменения формы редактирования.
2)При добавлении типа collection:
PHP
1
2
3
4
5
6
7
8
9
$builder->add('title', 'text', array('label' => 'Заголовок'))
                ....
              ->add('newsLinks', 'collection', array(
                                               'label' => 'Ссылки к новости',
                                               'type' => new NewsLinkType(),
                                               'allow_add' => true,
                                               'allow_delete' => true,
                                               'prototype' => true
                                              ));
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
<?php
namespace Test\NewsBundle\Form;
 
use Symfony\Component\Form\AbstractType;
use Symfony\Component\Form\FormBuilder;
 
class NewsLinkType extends AbstractType
{
    public function buildForm(FormBuilder $builder, array $options)
    {
        $builder->add('url')
                ->add('text');
    }
 
    public function getName()
    {
        return 'newsLinkType';
    }
 
 
    public function getDefaultOptions(array $options)
    {
        return array(
            'data_class' => 'Test\NewsBundle\Entity\NewsLink',
        );
    }
}
JavaScript
1
2
<!-- При нажатии на кнопку #addLink он добавляется к таблице -->
   <script type="text/html" id="nl">{{ _self.linkRow (form.newsLinks.get('prototype')) }}  </script>
У меня возникает такая ошибка:

Как я понимаю, почему-то не находит метод get.
Пробовал
JavaScript
1
<script type="text/html" id="nl">{{ _self.linkRow (form.newsLinks.vars.prototype) }}  </script>
Такая же ошибка.
Посмотрел здесь, вроде все правильно, только немного по другому, т.к. свои задачи.
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
18.11.2014, 15:49
Ответы с готовыми решениями:

Описать свойство класса с типом Collection и соответствующие Property методы
Описать свойство класса с типом Collection и соответствующие Property методы Ребят нужна помощь.В понедельник экзамен VBA. Препод...

Работа с формой
Подскажите можно ли менять местами формы, в Visual studia 2010? Т.е. у меня есть 10 форм, я хочу чтобы они при отладке загружались не по...

Работа с формой
Коллеги, день добрый. Помогите разобраться. Вопрос 1. В результате отработки ниже представленного кода, всегда выводится сообщение...

2
130 / 15 / 6
Регистрация: 05.08.2013
Сообщений: 285
26.11.2014, 01:20  [ТС]
Ответ на то, как заменить название submit'а, я нашел:
Ниже, шаблон twig, отнесу его к html коду:
HTML5
1
2
3
4
5
6
7
{{ form_start(form) }}
         {% extends '::base.html.twig' %}
 
        {# .....какие то иные элементы формы #}
        {# переопределение элементов формы #}
        {{ form_widget(form.submit, { 'label': 'Создать тест','attr': {'class': 'createTest'} }) }}
    {{ form_end(form) }}
Выше присваиваю label, для сущности submit, которая наследуется из base.html.twig
Также, можно поменять в классе для управления формой, который предварительно генерируется doctrine вместе с базовыми элементами формы для взаимодействия с БД, командой:
Bash
1
php app/console doctrine:generate:crud --entity=YourNameBundle:NewsLink --route-prefix=link_to_your_app --with-write --format=annotation
Что-то вроде этого:
PHP
1
2
3
4
5
6
7
8
9
10
/**
     * @param FormBuilderInterface $builder
     * @param array $options
     */
    public function buildForm(FormBuilderInterface $builder, array $options)
    {
        $builder
            ->add('submit', null, array('label' => 'Создать'));
            
     };
Но не получилось...странно
Более подробно написано в этом разделе
На второй вопрос пока не нашел ответ.
0
35 / 35 / 3
Регистрация: 27.10.2014
Сообщений: 120
29.11.2014, 23:41
метод Get надо в роутинге прописать для данного экшена.
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
29.11.2014, 23:41
Помогаю со студенческими работами здесь

Работа с формой
Что нужно сделать,чтоб когда при выполнении работы на форме поверх неё открывалось окно,а потом убиралось, Она продолжала работу,а не...

Работа с формой в С#
Помогите пожалуйста еще с таким вопросом.У нас есть форма,вот ее принтскрин. Когда мы вводим число в текстбокс &quot;положення вузла...

Работа с формой
Есть запрос из которого берутся данные для записи в форму.Как сделать так чтобы при выборе Организации в форме данные записывались в...

Работа JS с формой
Здравствуйте. Плохо разбираюсь в JS, но сделать надо на JS. Задача проста. Есть форма, надо чтобы при нажатии кнопки отправить,...

Работа с формой JS
Добрый день! Есть следующая проблема: на сайте (чужом) есть форма работающая на JS. То есть вводятся какие-то данные, нажимается кнопка и...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Новые блоги и статьи
Модель микоризы: классовый агентный подход 3
anaschu 06.01.2026
aa0a7f55b50dd51c5ec569d2d10c54f6/ O1rJuneU_ls https:/ / vkvideo. ru/ video-115721503_456239114
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR
ФедосеевПавел 06.01.2026
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR ВВЕДЕНИЕ Введу сокращения: аналоговый ПИД — ПИД регулятор с управляющим выходом в виде числа в диапазоне от 0% до. . .
Модель микоризы: классовый агентный подход 2
anaschu 06.01.2026
репозиторий https:/ / github. com/ shumilovas/ fungi ветка по-частям. коммит Create переделка под биомассу. txt вход sc, но sm считается внутри мицелия. кстати, обьем тоже должен там считаться. . . .
Расчёт токов в цепи постоянного тока
igorrr37 05.01.2026
/ * Дана цепь постоянного тока с сопротивлениями и напряжениями. Надо найти токи в ветвях. Программа составляет систему уравнений по 1 и 2 законам Кирхгофа и решает её. Последовательность действий:. . .
Новый CodeBlocs. Версия 25.03
palva 04.01.2026
Оказывается, недавно вышла новая версия CodeBlocks за номером 25. 03. Когда-то давно я возился с только что вышедшей тогда версией 20. 03. С тех пор я давно снёс всё с компьютера и забыл. Теперь. . .
Модель микоризы: классовый агентный подход
anaschu 02.01.2026
Раньше это было два гриба и бактерия. Теперь три гриба, растение. И на уровне агентов добавится между грибами или бактериями взаимодействий. До того я пробовал подход через многомерные массивы,. . .
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост.
Programma_Boinc 28.12.2025
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост. Налог на собак: https:/ / **********/ gallery/ V06K53e Финансовый отчет в Excel: https:/ / **********/ gallery/ bKBkQFf Пост отсюда. . .
Кто-нибудь знает, где можно бесплатно получить настольный компьютер или ноутбук? США.
Programma_Boinc 26.12.2025
Нашел на реддите интересную статью под названием Anyone know where to get a free Desktop or Laptop? Ниже её машинный перевод. После долгих разбирательств я наконец-то вернула себе. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru