ФорумПрограммированиеPHP для идиотов → admin generator

admin generator

  • Абырвалг

    Сообщения: 6476 Репутация: N Группа: Джедаи

    Spritz 10 февраля 2010 г. 7:44

    У Симфони есть admin generator. Прописываем YAML, на основе него генерируются модели, валидаторы, формы.

    А как у вас в приложениях в админке организованы операции CRUD? Вот у меня в CMS'ке примерно так:
    есть классы *Listers (вывод списком или деревом) и *Managers (создание, редактирование, удаление). Общие части (например пагинация, сортировка) в ListerCommon отправлена. Его наследуют листеры, переписывают 2-3 метода (получение данных о кол-ве элементов, список элементов для текущей страницы, дополнительный парсинг строк).

    Что не нравится: то, что много шаблонов приходится делать. Каждый раз шаблон с формой, и со списком.
    Спустя 121 сек.
    а еще многовато JS-кода в шаблонах дублирующегося
  • phpdude

    Сообщения: 26624 Репутация: N Группа: в ухо

    Spritz 10 февраля 2010 г. 7:55, спустя 11 минут 30 секунд

    ойки пиздечки)
    Сапожник без сапог
  • Baboot

    Сообщения: 440 Репутация: N Группа: Адекваты

    Spritz 10 февраля 2010 г. 8:33, спустя 37 минут 59 секунд

    штоб три авы дуда было
  • md5

    Сообщения: 11948 Репутация: N Группа: в ухо

    Spritz 10 февраля 2010 г. 8:36, спустя 2 минуты 46 секунд

    фчетфёрке!
    все умрут, а я изумруд
  • Baboot

    Сообщения: 440 Репутация: N Группа: Адекваты

    Spritz 10 февраля 2010 г. 8:42, спустя 5 минут 59 секунд

    дуд фест на пiха.ру
  • Абырвалг

    Сообщения: 6476 Репутация: N Группа: Джедаи

    Spritz 10 февраля 2010 г. 8:50, спустя 8 минут 10 секунд

    Дуд, а что это за мужик у меня на аватарке? Это ты, или в инете где-то нашел фотку?
  • artoodetoo

    Сообщения: 5139 Репутация: N Группа: в ухо

    Spritz 10 февраля 2010 г. 8:54, спустя 3 минуты 45 секунд

    где мужик, на чьей аватарке?
    ιιlllιlllι унц-унц
  • phpdude

    Сообщения: 26624 Репутация: N Группа: в ухо

    Spritz 10 февраля 2010 г. 9:07, спустя 13 минут 17 секунд


    Дуд, а что это за мужик у меня на аватарке? Это ты, или в инете где-то нашел фотку?
    это я с бодуна …
    Спустя 28 сек.
    или перед бодуном, точно не помню
    Сапожник без сапог
  • Абырвалг

    Сообщения: 6476 Репутация: N Группа: Джедаи

    Spritz 11 февраля 2010 г. 2:38, спустя 17 часов 31 минуту 12 секунд

    Может Эдво расскажет о том, как это дело в джанге? Там же ж наверно также как и в sf, просто минуя YAML?
  • adw0rd

    Сообщения: 22905 Репутация: N Группа: в ухо

    Spritz 11 февраля 2010 г. 4:16, спустя 1 час 37 минут 34 секунды

    Там не надо писать yaml, там сразу по модели строится админка, а изменять поведение админки можно через мета-классы и свои формы


    class Category(models.Model):
    title = models.CharField(max_length=100)
    url = models.CharField(max_length=100)

    def __unicode__(self):
    # при печати объекта выводить заголовок
    return self.title

    class Meta:
    # сортировка по умолчанию
    ordering = ['title']

    class CategoryAdmin(admin.ModelAdmin):
    # в админке отображать только title
    list_display = ('title')

    # регистрируем класс админки
    admin.site.register(Category, CategoryAdmin)
    adw/0
  • Абырвалг

    Сообщения: 6476 Репутация: N Группа: Джедаи

    Spritz 11 февраля 2010 г. 7:33, спустя 3 часа 17 минут 13 секунд

    а как фильтры делаются? Типа выбрать записи, с комментариями больше 10 или заголовок которых начинается на А*
  • adw0rd

    Сообщения: 22905 Репутация: N Группа: в ухо

    Spritz 11 февраля 2010 г. 9:33, спустя 2 часа 3 секунды

    А как это выглядит в sf?
    adw/0
  • Абырвалг

    Сообщения: 6476 Репутация: N Группа: Джедаи

    Spritz 11 февраля 2010 г. 9:50, спустя 17 минут 21 секунду

    Я до симфони еще не дорос.

    http://www.symfony-project.org/book/1_0/14-Generators "Filtering the Results"

    но это 1.0, в 1.4 наверно немного иначе
  • adw0rd

    Сообщения: 22905 Репутация: N Группа: в ухо

    Spritz 11 февраля 2010 г. 10:03, спустя 12 минут 27 секунд

    У меня получилось только через extra, но это если не хранится счетчик камментов в посте
    Спустя 10 сек.
    если хранится то все просто
    adw/0

Пожалуйста, авторизуйтесь, чтобы написать комментарий!