These are chat archives for dru-io/Drupal

23rd
Sep 2016
boolboost
@boolboost
Sep 23 2016 03:51
Ну я делал
Суть такая nodejs может находится и на другом сервере
Не суть
В друпал ставишь модуль nodejs
И настраиваешь
Host и port, ну и открыть порт не открыть
У меня есть настройки под локальныц
Ставишь эту часть куда удобнее
Это чито nodejs приложения
Ставится легко npm install
https://github.com/beejeebus/drupal-nodejs/blob/master/nodejs.config.js.example нужно прописать host port и секретный ключ
Так же эти же настройки нужно указать на сайте в конфигурации модуля nodejs
settings = {
scheme: 'http',
port: 8888,
host: '',
resource: '/socket.io',
serviceKey: 'secret',
backend: {
port: 80,
host: 'domain site',
scheme: 'http',
basePath: '',
messagePath: '/nodejs/message'
},
debug: false,
baseAuthPath: '/nodejs/',
extensions: [],
clientsCanWriteToChannels: false,
clientsCanWriteToClients: false,
transports: ['websocket', 'polling'],
jsMinification: true,
jsEtag: true,
logLevel: 1
};
Вот мои настройки на том же сервере где и друпал ставил ноду
boolboost
@boolboost
Sep 23 2016 04:03
host пустойуказал так как localhost если указать или домен работать не будет
Открыл порт 8888
Ну и дополнительно настроил forever для автоматисеского запуска
sudo npm install forever -g
forever start app.js
Так стартуешь один раз
И он сам поднимает приложение если оно упало
И добавил в авто запуск, тут уже от вашего скила ... Я добавлял в crontab.

crontab -e

@reboot /usr/bin/forever start --workingDir /path/nodejs /path/app.js

boolboost
@boolboost
Sep 23 2016 04:08
Собственно собирал по крупицам никто не пишет про то как настраивать nodejs на томже сервере ).
Всё.
alexd73
@alexd73
Sep 23 2016 08:26

Собственно собирал по крупицам никто не пишет про то как настраивать nodejs на томже сервере ).

чем не повод написать?

boolboost
@boolboost
Sep 23 2016 08:30
Повод, собираюсь написать.
Ivan
@Punk-UnDeaD
Sep 23 2016 08:40
парни, кто активно с варнишем работал?
Alan Bondarchuk
@fortis
Sep 23 2016 08:48
@Grayw0lf использовать nodejs как интерфейс а друпал как бекенд? имхо затея бесполезная, там от друпала ниче не останется
Ivan
@Punk-UnDeaD
Sep 23 2016 08:48
чойта?
Alan Bondarchuk
@fortis
Sep 23 2016 08:49
я понимаю фронтенд фреймворк взять
но у ноды все свое есть, зачем тогда друпал дергать ?
Ivan
@Punk-UnDeaD
Sep 23 2016 08:49
друпал как конструктор филдов и сущностей вполне хорош
Alan Bondarchuk
@fortis
Sep 23 2016 08:49
если он тормозит то в чем перемены?)
датьфу)
консоль у симфони лучше с этим справится
Ivan
@Punk-UnDeaD
Sep 23 2016 08:49
админка есть
Alan Bondarchuk
@fortis
Sep 23 2016 08:50
из ноды работать с друпалом через апи?
boolboost
@boolboost
Sep 23 2016 08:50
Оу nodejs для рендера я не юзал(
Alan Bondarchuk
@fortis
Sep 23 2016 08:51
админка и у симфони генерится
boolboost
@boolboost
Sep 23 2016 08:51
Но вообще и такое реально чисто drupal для админки
Alan Bondarchuk
@fortis
Sep 23 2016 08:51
админка друпала хороша тем что через нее интерфейс можно строить сайту
а когда его нет толку от нее
да и при связывании ноды с друпалом через апи всеравно тормозом останется друпал
ради ускорения имхо это глупость
Ivan
@Punk-UnDeaD
Sep 23 2016 08:54
ну как через апи
прямыми запросами в базу с кешированием в мемкеш при чтении
друпал вообще не участвует
даже и на запись немного можно
Alan Bondarchuk
@fortis
Sep 23 2016 08:55
наворотить много можно)
только какой смысл если кодишь ты не на друпале
создание сущностей и формы редактирования со списками это не великое достижение друпала
Ivan
@Punk-UnDeaD
Sep 23 2016 08:55
вот этот аргумент странный
ну и что, что уже не на друпале?
заплачено за что?
Alan Bondarchuk
@fortis
Sep 23 2016 08:56
за то чтоб кодить без друпала? не знаю
если задача стоит и оплачена вхреначить ноду вместо рендера друпала то все ок надо делать)
Ivan
@Punk-UnDeaD
Sep 23 2016 08:57
ну вот за что заплачено, что решено, или разрабу самому для дома для семьи захотелось, то и делается
Alan Bondarchuk
@fortis
Sep 23 2016 08:57
если разработать проект то идея дурацкая
от того что за это платят лучше такое решение не становится))
Ivan
@Punk-UnDeaD
Sep 23 2016 08:59
я вот прямо скажу, что ноды можно делать в шаблоне, а не форматтерами во вью моде
более того, иногда по другому дорого получается
Alan Bondarchuk
@fortis
Sep 23 2016 09:01
ну если задача сделать подешевле то тут не об архитектурных изысках речь)
Ivan
@Punk-UnDeaD
Sep 23 2016 09:01
когда одно поле является текстом ссылки другого поля и использует класс из поля сущности по ссылке третьего поля
задача всегда в дешевле
время = деньги
Alan Bondarchuk
@fortis
Sep 23 2016 09:02
именно)
но есть еще долгосрочная перспектива
проекту жить и развиваться, если проект не будет жить то пофиг
Ivan
@Punk-UnDeaD
Sep 23 2016 09:03
вот тут опять вопрос
зачем считать, что после тебя или даже ты не сможешь разобраться с архитектурным решением, которое не совсем мейнстрим друпала?
Alan Bondarchuk
@fortis
Sep 23 2016 09:04
потому что я видел такие проекты :) 2 года пхп программист кодил на друпале, куча бизнес логики, своя erp
Ivan
@Punk-UnDeaD
Sep 23 2016 09:04
если указанную связку из трёх полей оформить как-то иначе, чем в шаблоне, написать адский форматтер, кому от этого лучше будет?
Alan Bondarchuk
@fortis
Sep 23 2016 09:04
а теперь они умирают потихоньку
потому что конкуренты обгоняют и делают гибче и быстрее внедряются
а они не могут все это сдвинуть :)
Ivan
@Punk-UnDeaD
Sep 23 2016 09:04
они быстрее генерируют админские вьюхи?
Alan Bondarchuk
@fortis
Sep 23 2016 09:05
никто в этом не может нормально разобраться потому что там говнокод который: уязвим, не поддерживаем, и с ним трудно что то сделать
Ivan
@Punk-UnDeaD
Sep 23 2016 09:05
или быстрее пишут твиг шаблоны?
v1adimir
@v1adimir
Sep 23 2016 09:05
Всем привет. Может кто-нибудь поделиться опытом про commerce. Потянет ли drupal7 + commerce магазин на 1М товарных вхождения?
KarmaBot
@KarmaBot
Sep 23 2016 09:05
@v1adimir, привет, как настроение?
Ivan
@Punk-UnDeaD
Sep 23 2016 09:05
или не мечутся в панике, ах, это же уже не друпал
Alan Bondarchuk
@fortis
Sep 23 2016 09:05
когда каждый новый функционал ломает в самых неожиданных местах проект
конкуренты? нет ничего особенного они не делают
просто в этом проекте разраб не думал вообще что потом будет
он делал задачи как быстрее и дешевле
Ivan
@Punk-UnDeaD
Sep 23 2016 09:06
@v1adimir позиции потянет
а сколько там таксономии?
быстрее и дешевле включает в себя в том числе поддержку и доработку
если по уму
v1adimir
@v1adimir
Sep 23 2016 09:07
@Punk-UnDeaD точно не скажу, может на 1 000, а может и 10 000.
Alan Bondarchuk
@fortis
Sep 23 2016 09:10
@Punk-UnDeaD дело не втом что это уже не друпал, если это начало нового проекта то означает что инструмент выбран неправильно
Ivan
@Punk-UnDeaD
Sep 23 2016 09:11
@fortis главное - подольше метаться, пока конкуренты новые фичи выкатывают
Alan Bondarchuk
@fortis
Sep 23 2016 09:11
у них проект на друпале они никуда не мечутся)))
Ivan
@Punk-UnDeaD
Sep 23 2016 09:12
@v1adimir по памяти проблемы при редактировании могут быть
потому что дерево таксономии гигантское и его надо прогрузить перед помещением в виджет
и на странице словаря
boolboost
@boolboost
Sep 23 2016 09:13
Может лучше скажете как друпал разогнать хорошо)) правильно?
Alan Bondarchuk
@fortis
Sep 23 2016 09:13
он итак быстрый)
Ivan
@Punk-UnDeaD
Sep 23 2016 09:13
@boolboost вдумчиво разгонять!
boolboost
@boolboost
Sep 23 2016 09:13
Тема то интересная.
Alan Bondarchuk
@fortis
Sep 23 2016 09:14
blob
Ivan
@Punk-UnDeaD
Sep 23 2016 09:14
выкинуть вьюхи, панели, меню, блоки
boolboost
@boolboost
Sep 23 2016 09:14
А views плох?
Alan Bondarchuk
@fortis
Sep 23 2016 09:15
выкинуть +1 )
boolboost
@boolboost
Sep 23 2016 09:15
А панели чем плохи?
Alan Bondarchuk
@fortis
Sep 23 2016 09:15
чет хз не залился скрин
v1adimir
@v1adimir
Sep 23 2016 09:15
@Punk-UnDeaD планируется выделенный сервер 8-16 ГБ. Но проблема понятна. Спасибо!
KarmaBot
@KarmaBot
Sep 23 2016 09:15
Спасибо (+1) для @Punk-UnDeaD принято! Текущая карма +12.
Alan Bondarchuk
@fortis
Sep 23 2016 09:15
1413422309.png
Ivan
@Punk-UnDeaD
Sep 23 2016 09:15
вьювс плох, вьювс в панелях уже лучше
но лучше всего разруливать всё самостоятельно
Alan Bondarchuk
@fortis
Sep 23 2016 09:16
контрибы надо смотреть все что ставишь) там много говна
boolboost
@boolboost
Sep 23 2016 09:17
Ну views то в ядре)
Ivan
@Punk-UnDeaD
Sep 23 2016 09:17
в восьмёрке
Alan Bondarchuk
@fortis
Sep 23 2016 09:17
тут на конфе по хайлоаду чувак с трибуны спросил поднимите руки кто смотрит словлог
пару рук было в зале ))))
Ivan
@Punk-UnDeaD
Sep 23 2016 09:19
дык да
в семёрке в стулс была проблема
сначала генерился дефолтный вид ноды, а потом варианты
соответственно всегда грузились 50 комментов
Alan Bondarchuk
@fortis
Sep 23 2016 09:20
пхп7 нам кстати норм прибавил производительности, чтения-записи в мемкеш и базу, и сам пхп процентов на 30% шустрее стали
Ivan
@Punk-UnDeaD
Sep 23 2016 09:20
всего-то одна строка не на своём месте, а удар по производительности был сильный
boolboost
@boolboost
Sep 23 2016 09:21
Исправили?
Этот баг
Ivan
@Punk-UnDeaD
Sep 23 2016 09:21
если не смотреть в логи, то хрен ты вообще догадаешься, чего это оно
исправили, ага
boolboost
@boolboost
Sep 23 2016 09:22
Так что views в d8 не юзать?
Ну я про те случаи когда нужно вывести просто спосок товаров например
Ivan
@Punk-UnDeaD
Sep 23 2016 09:24
если умеешь хорошо без вьюх, то лучше без них
только не забывай про теги кеширования
Alan Bondarchuk
@fortis
Sep 23 2016 09:24
у нас вьюхи естественным образом ушли с проекта )
к 4ому редизайну))
boolboost
@boolboost
Sep 23 2016 09:24
А что за теги
Alan Bondarchuk
@fortis
Sep 23 2016 09:25
когда распихивать готовую верстку по нескольким темплейтам стало казаться бредом при том что можно сделать свой один нормальный темплейт ))
boolboost
@boolboost
Sep 23 2016 09:25
Ааа или вы про теги для кеша
Ivan
@Punk-UnDeaD
Sep 23 2016 09:25
ну чтоб кеш очищался при обновлении нод
boolboost
@boolboost
Sep 23 2016 09:25
Достаточно юзать просто кеш сущностей
Ivan
@Punk-UnDeaD
Sep 23 2016 09:26
кеш сущностей в восьмёрке сразу есть
я про рендер кеш
boolboost
@boolboost
Sep 23 2016 09:26
Не так в d7 тоже есть вроде
А кеша рендера нет чтоли?
В d7
У отоброжения
Ivan
@Punk-UnDeaD
Sep 23 2016 09:27
если у тебя страница закеширована, то при добавлении нового элемента ничего не сбросится
boolboost
@boolboost
Sep 23 2016 09:27
Это да есть такой баг в d7
Но в d8 же решили вроде
Ivan
@Punk-UnDeaD
Sep 23 2016 09:28
угу, тегами
boolboost
@boolboost
Sep 23 2016 09:28
Кстати views то если не юзать
Views медленнее в разу потому что больше умеет?
Я к чему это может есть какой то модуль упращающий поведение views например, когда используются минимум парамметров
Ну или views cache он хорошо помогает?
boolboost
@boolboost
Sep 23 2016 09:40
А вообще забавно такое ошущение что d7 говно а d8 нормальная система.
boolboost
@boolboost
Sep 23 2016 10:29
Не это не смешно
Это было 6 лет назад
Много что исправили вот php7 вышел
Да и никто не старается поставить 200 модулей
Конечно количество влияет на производительность и качество кода тоже
Alan Bondarchuk
@fortis
Sep 23 2016 10:49
ну там даже в best practice есть про количество модулей
говно не в дру а в контрибах)
дру хорош)
@boolboost про модуль который ты кстати советовал))) http://cgit.drupalcode.org/nodejs/tree/nodejs.module#n260
вот тут он убивает кеш для анонимов
если ты используешь для анонимов его, и об этом никакого намека
boolboost
@boolboost
Sep 23 2016 10:53
А что так много модулей ставить нужно. По мне так не много на d8 ещё меньше. d7 - 20, d8 - 8 модулей спавлю примерно.
Alan Bondarchuk
@fortis
Sep 23 2016 10:54
если хочешь сделать риалтайм для анонимов, не персональный а просто для всех то он неявно убивает кеш и ничего об этом не скажет)
boolboost
@boolboost
Sep 23 2016 10:55
А не знал, там где использую сайт закрытый.
Alan Bondarchuk
@fortis
Sep 23 2016 10:55
и почему то куча статей и примеров как сделать риалтайм с этим модулем хотя это пара строчек, даже на ноде socket.io поднять плевое дело
boolboost
@boolboost
Sep 23 2016 10:56
Ну да мне даже показалось что с ним сложнее))
Alan Bondarchuk
@fortis
Sep 23 2016 10:56
причем там вот такое: if (variable_get('nodejs_authenticated_users_only', FALSE)) {
это значит что просто при включении он сразу работает для анонимов и отключает кеш
у него еще для ноды есть пакет и он тоже для простых задач громоздкий
он каждый раз сначала проверяет жива ли нода, потом проверяет авторизован ли пользователь, а только потом шлет твой запрос
долбит запросами туда сюда)
boolboost
@boolboost
Sep 23 2016 10:58
Ну это вроде логично
Alan Bondarchuk
@fortis
Sep 23 2016 10:59
это нужно если у тебя чатик)
boolboost
@boolboost
Sep 23 2016 10:59
Проверяет есть ли у тебя нанеё права
Потом в ноду шлёт
Alan Bondarchuk
@fortis
Sep 23 2016 10:59
а если тебе надо всем клиентам разослать то все это не нужно
они браузером подключаются по вебсокетам к ноде и она просто делает эмит на всех
boolboost
@boolboost
Sep 23 2016 10:59
А нода уже мелочь дедайт чисто разослать
Alan Bondarchuk
@fortis
Sep 23 2016 10:59
нода тоже шлет запросы на сайт чтоб проверить пользователя
у них
boolboost
@boolboost
Sep 23 2016 10:59
Так можно же свой модуль написать
Под этот случай
Alan Bondarchuk
@fortis
Sep 23 2016 11:00
ну пакет то их будет на ноде стоять)
если нет то этот модуль уже не нужен
да и гоняет он отрендеренный хтмл
boolboost
@boolboost
Sep 23 2016 11:00
Ну а как иначе
Alan Bondarchuk
@fortis
Sep 23 2016 11:00
json)
boolboost
@boolboost
Sep 23 2016 11:01
А рендрить js?
Alan Bondarchuk
@fortis
Sep 23 2016 11:01
рендерить клиентом) Drupal.theme есть у js)
boolboost
@boolboost
Sep 23 2016 11:01
Ну можно и так
Кстати а как он работает
Запрос сам слать не будет сново
Хотя ьут такой вопрос как лучше ещё
Если всё так плохо как вы говорите, может напишите свой, мега оптимизированный? Я к сожалению не осилю написать хороший.
Alan Bondarchuk
@fortis
Sep 23 2016 11:07
зачем у меня частная задача, автору я предложил починить это но он сначала закрыл как work as designed
а потом решил поправить но тоже каким то адовым способом
просто этот модуль не для всего)
boolboost
@boolboost
Sep 23 2016 11:14
Понятно.
А по поводу кеша
Думаю на d8 с этим проблем будет меньше
Не думаю что на d7 стоит ждать новые фичи.
Alan Bondarchuk
@fortis
Sep 23 2016 11:21
ну заводить сессию каждому анониму просто так везде вредно)
кеш друпала это просто следствие
7ка не отдает кеш если пользователь с сессией, а он ее там как раз создает
ладно бы это был гитхаб, форкнул на радость всем и ок. а тут вроде как орг - своя экосистема, но при этом любой мейнтейнер может просто закрыть тикет потому что ятакщитаю)
Alan Bondarchuk
@fortis
Sep 23 2016 11:26
когда ты взял либу на просторах гитхаба у тебя претензия не к движку в который ты ее поставил
а когда ты скачал модуль с оф сайта имхо отношение уже другое, это все часть проекта друпал
alexd73
@alexd73
Sep 23 2016 11:56
после обновления d8 перестали работать вьюхи (у меня их 3штуки) где есть аттачмент типа глоссарий..
Drupal\Core\Database\DatabaseExceptionWrapper: Exception in Компании[company]: SQLSTATE[42S22]: Column not found: 1054 Unknown column 'users_field_data.uid1' in 'where clause':
вот такой запрос http://pastebin.com/yLjDbeBF
Ни какие танцы не помогали, пробовал копировать представление и править, но там вообще SQLSTATE[21000]: Cardinality violation: 1241 Operand should contain 2 column(s):
(это запросы из разных вьюх, но суть одна)
alexd73
@alexd73
Sep 23 2016 12:01
Может есть какое-то предположение? как это победить?
Могу дать доступ, если что-то не понятно ))
Alan Bondarchuk
@fortis
Sep 23 2016 12:21
собрать заново вьюхи)
boolboost
@boolboost
Sep 23 2016 12:23
Кстати обновление с d7 на d8?
alexd73
@alexd73
Sep 23 2016 12:31
не..
вьюхи тоже не получается собрать..
там используется связь пользоователя с "характерный материал", вот ее добавляешь - и все рушится..
всмысле Cardinality violation: 1241 Operand should contain 2
SQLSTATE[21000]: Cardinality violation: 1241 Operand should contain 2 column(s): SELECT users_field_data.langcode AS users_field_data_langcode, users_field_data.uid AS uid, node_field_data_users_field_data.nid AS node_field_data_users_field_data_nid, 'polzovateli_s_materialami:page_1' AS view_name FROM {users_field_data} users_field_data LEFT JOIN {node_field_data} node_field_data_users_field_data ON (SELECT node_field_data_content.nid AS nid_content, ':default' AS view_name FROM {node_field_data} node_field_data_content LEFT JOIN {users_field_data} users_field_data_node_field_data_content ON "node_field_data_content".uid = "users_field_data_node_field_data_content".uid WHERE (( ("users_field_data_node_field_data_content".uid = users_field_data.uid ) )) ORDER BY node_field_data_content.created DESC LIMIT 1 OFFSET 0) = node_field_data_users_field_data.nid WHERE (( (users_field_data.status = :db_condition_placeholder_0) )) LIMIT 11 OFFSET 0; Array ( [:db_condition_placeholder_0] => 1 )
Обновлял драшем.. думаю, как можно вернуть рабочую версию?
в drush-buckups - только файлы..
а где базу взять?
alexd73
@alexd73
Sep 23 2016 13:13
Да.. проблема со связью Характерный материал.. Удалил его - страницы заработали.. но мне надо отбирать только тех, у кого есть материал..
alexd73
@alexd73
Sep 23 2016 13:35
Выручайте, как убрать дубли? Т.е. раньше фильтровал по Характерному материалу, а если добавить связь материал, то если у юзера несколько материалов - оно показывает этого юзера несколько раз ((
boolboost
@boolboost
Sep 23 2016 13:37
Views по материалам, а выводите users ;) я правильно понимаю?
Вывод ввиде полей?
По моему достаточно включить Distinct
Если не записи разные а нижна одна из них
Тогда сделайте агригацию
boolboost
@boolboost
Sep 23 2016 13:44
Если не поможет могу только предложить успользовать хук views. Какой имменно не помню. Суть в том что бы ручками улалить лишнее.
Вроде этот hook_views_pre_render
alexd73
@alexd73
Sep 23 2016 14:10

@boolboost

По моему достаточно включить Distinct

Не помогает

Там вообще просто пользователи.. но надо отфильтровать тех, у кого есть материалы. При добавлении связи "материал" начинаются дубли..
boolboost
@boolboost
Sep 23 2016 14:12
Но что то из материала вы всё же выводите
Какие то поля
Агрегацию по uid сделайте
alexd73
@alexd73
Sep 23 2016 14:20

Но что то из материала вы всё же выводите

нет..

только в фильтре
boolboost
@boolboost
Sep 23 2016 14:21
Хм бред какой-то
Sql запросе явно должны быть поля из них
Иначе все колонки были бы одинаковые
И повторяющихся записях
Distinct бы точно прошёл
boolboost
@boolboost
Sep 23 2016 14:23
В общем смотрите анализируйте
Посмотрите что этот sql выдаёт
Думаю сразу станет понятся где не совподает
Дальше сами, чем смог тем помог.
alexd73
@alexd73
Sep 23 2016 14:27
@boolboost спасибо! я до обновления уже этого бился и работало.. Как раз это решалось, если делаешь связь именно по по Характерному материалу. а теперь он не работает.. :( надо патчик искать..
KarmaBot
@KarmaBot
Sep 23 2016 14:27
Спасибо (+1) для @boolboost принято! Текущая карма +16.
alexd73
@alexd73
Sep 23 2016 14:39
Агрегация решает.. НО ЁМАЁ!!! Когда я делал изначально - я не мог это сделать и с аргрегацией..
boolboost
@boolboost
Sep 23 2016 14:58
Патч для views))
Смешно..
А вообще да иногда не хватат прозрачности типа добавить свои left join и innert join на выбор и указать group by
Zulljin
@animan01
Sep 23 2016 15:11
Всем приветы)
KarmaBot
@KarmaBot
Sep 23 2016 15:11
Прувет, @animan01!
Zulljin
@animan01
Sep 23 2016 15:12
А как можно вывести форму загрузки для файла, если сама форма это поле сущности?
boolboost
@boolboost
Sep 23 2016 15:13
Есть простой способ
Создаёшь кастомную форму с виджетом file
Пишишь submit в нем грузишь сущьность и передаёшь файл
Zulljin
@animan01
Sep 23 2016 15:15
И потом при загрузке типа в сущность слать?
boolboost
@boolboost
Sep 23 2016 15:15
Угу
Zulljin
@animan01
Sep 23 2016 15:15
Есть пример?
boolboost
@boolboost
Sep 23 2016 15:15
Я делаю обысно через entityform
Для меня так удобнее
Zulljin
@animan01
Sep 23 2016 15:15
Желательно мне без сторонних модулей
boolboost
@boolboost
Sep 23 2016 15:16
Весь код не покажу
Про формы гуглите form api
На drupal org хорошая дока по ним с примерами
Submit описать не сложно
Zulljin
@animan01
Sep 23 2016 15:19
@boolboost спс, вроде все просто) просто еще такое не делал
KarmaBot
@KarmaBot
Sep 23 2016 15:19
Спасибо (+1) для @boolboost принято! Текущая карма +17.
boolboost
@boolboost
Sep 23 2016 15:19
$wrapper = entity_metadata_wrapper('node', $id);
$wrapper->field_file = $file;
$wrapper->save();
Суть такая
Да всё просто.
boolboost
@boolboost
Sep 23 2016 15:31
$file = (object) array(
'uid' => 1,
'uri' => $path,
'filename' => $basename,
'filemime' => file_get_mimetype($path),
'status' => FILE_STATUS_PERMANENT
);
Вот ещё это минимальная структура поля файла
Zulljin
@animan01
Sep 23 2016 15:34
Спасибо еще раз) буду пробовать все сделать
KarmaBot
@KarmaBot
Sep 23 2016 15:34
@animan01, в этом чате принято добавлять имя пользователя, чтобы его поблагодарить.