Перейти до вмісту
Пошук в
  • Детальніше...
Шукати результати, які ...
Шукати результати в ...

lexxkrt

Користувачі
  
  • Публікації

    347
  • З нами

  • Відвідування

Коментарі блогу, опубліковані користувачем lexxkrt

  1. 10 минут назад, stickpro сказал:

    я использую компилируемые языки, мне компилятор не даст ошибиться

    компилируемый язык не проверяет sql запрос, который простая строка. а в случае билдера интеллисенс подскажет где ошибся. но это уже отклонение от темы. тут речь об опенкарте

  2. 2 минуты назад, SooR сказал:

    А, все таки автоматизма нет?) Для запросов типа select * from user order by user_id может и полезная штука для домохозяек, в остальном не вижу смысла. Это моя позиция, не обязательно соглашаться.

    во всех orm и кверибилдерах есть возможность выполнять чистый sql запрос, ради бога если запрос сложный то делай его, а для простых запросов билдер упрощает работу. 

    а инсерты в кверибилдерах например

    DB::table('products')->insert($data);

    а чистый sql как будет выглядеть при этом? причем $data это может быть не одна запись, а массив записей

     

  3. 3 минуты назад, stickpro сказал:

    1 вы скорее сойдете сума, 2 потеряете в производительности, 

    первое возможно, а второе с чего бы, тот же кверибилдер собирает ту же sql строку, плюс сделает за вас грязную работу по экранированию да префиксы подставит

  4. 4 минуты назад, SooR сказал:

    Разница есть. А еще есть разница между 0000334 и 334, когда нужно найти запись по номеру договора или просто вот по такому идентификатору.

    ну так данные ты передаешь

    $query->where('num','=', 334)

    $query->where('num,'=', '0000334')

    т.е. изначально ты подставляешь переменную нужного типа. из 0000334 после экранирования 334 не получится, как и наоборот

  5. 8 минут назад, SooR сказал:

    А вы уверены, что обертка экранирует '1' как int, а не string? А как на счет экранирования bigint(20)?

    а какая разница как экранирует для mysql where id = 1 и where id = '1' это одно и тоже

  6. 1 минуту назад, chukcha сказал:

    смотрите в 4-ку
    По идее почти так, например стандартные модули от опенкарт собраны в

    extension\opencart\
     

    нет я сосем про другое. там просто папка расширения вынесена, но контроллеры модели а также папки расширений лежат раньше самих файлов. я же предлагаю порядок extensions/author/module_name/{controller,model,language,view}. т.е. модуль целиком в единой папке, а не по разным

    • +1 1
  7. 27 минут назад, SooR сказал:
    
    $payments->where('cashtypeid', '=', '1');
    $payments->orWhere('cashtypeid','=','4');

    Серьезно? Вам проще писать строку с запятыми и кавычками, чем просто строку?

     

    Проще же WHERE foo = 'bar' AND baz = 3.

    А копировать запрос и делать отладку прямиком в базу? А откорректированный запрос вставить в $this->db->query()? Не проще ли?

    не проще. потому что в вашем случае, например, вы строку не экранируете

    • +1 1
  8. в принципе можно ничего и не добавлять. поработать с кодом, вычистить, избавиться от портянок, избавиться от дублирования кода, избавиться например от необходимости каждый раз создавать хлебные крошки, пусть генерируются от маршрута. избавиться от обработки переменных (объектов) в контроллерах. либо получать готовые из моделей, либо обрабатывать в твиге. переработать формирование урлов, опять же портянки.

    систему модулей/расширение я бы предложил сделать в одну папку, один модуль одна папка, т.е. тут же контроллер, рядом файл модели рядом языковые файлы и вьюхи. dbbuilder или голый sql это по сути одно и тоже вопрос предпочтений,

    • +1 2
×
×
  • Створити...

Important Information

На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність.