insert в doctrine на DQL
Да, в doctrine нет insert и это может превратиться в кошмар для неопытного программиста. Особенно, если сейчас два часа ночи, а сдавать проект нужно завтра в 9 утра. Точнее уже сегодня. Во всех остальных случаях - почитайте документацию, это того стоит, но если действительно надо прямо сейчас - тогда вот что нужно сделать:
Допустим, надо вставить строку в таблицу user. В этой таблице поля: id, first_name, last_name,... - остальные поля нас не интересуют - их может быть много. Так вот, чтобы вставить новую строку в таблицу нужно создать новый объект с таким же названием, как Ваша таблица. Вот так: $new_user = new User(). Потом задать значения полей вот так: $new_user->first_name = $firstname; $new_user->last_name = "Иванов";, где first_name и last_name - название столбцов в таблице User. Так же и с остальными столбцами. И в самом конце - $new_user->save().
Готово, всё записано!
Doctrine сложна для новичка, у неё есть другие минусы. Но, видит бог - есть и плюсы. Такие, как, например, красота кода, универсальность, удобство поддержки.
Допустим, надо вставить строку в таблицу user. В этой таблице поля: id, first_name, last_name,... - остальные поля нас не интересуют - их может быть много. Так вот, чтобы вставить новую строку в таблицу нужно создать новый объект с таким же названием, как Ваша таблица. Вот так: $new_user = new User(). Потом задать значения полей вот так: $new_user->first_name = $firstname; $new_user->last_name = "Иванов";, где first_name и last_name - название столбцов в таблице User. Так же и с остальными столбцами. И в самом конце - $new_user->save().
Готово, всё записано!
Doctrine сложна для новичка, у неё есть другие минусы. Но, видит бог - есть и плюсы. Такие, как, например, красота кода, универсальность, удобство поддержки.
<--Предыдущая статья | Следующая статья-->