Как добавить элемент в ресурс[[переменная]]

Поддержка
  • @Fox said in Как добавить элемент в ресурс[[переменная]]:

    То есть чтобы использовать переменные в имени ресурса, необходимо будет работать в "выполнить код", но такой подход @support не поддерживает.

    Я сделал, все получилось, только чтобы в запросе отправлялся {{ресурс}} а не "RESOURCE_995995". Я вставил "RESOURCE_995995" в создать переменную и шлю переменную. Все отправляется как надо.

    Собственно один вопрос остался не решенным, вот этот код удаляет {{ресурс}}, но как правильно составить синтаксис для такого кода?:

    _R("res_prefixi" + VAR_THREAD_INDEX).die()
    _R("res_prefixi" + VAR_THREAD_INDEX) = null
    RSync("res_prefixi" + VAR_THREAD_INDEX)
    log("Строка удаляется.")
    

    Здесь надо писать [["название ресурса"]]

    Но у меня название ресурса это переменная VAR_THREAD_INDEX

    В:

    RCreate
    RInsert
    RSync
    

    Работает, а в _R - нет.

    А у сапорта в апи тоже удаляется ресурс, от апи ничуть не легче:

    var index = lines.indexOf("account1")
    lines.remove(index)
    lines.sync()
    
  • @Fox

    А еще Ваша копилка больше не существует

  • @kroda said in Как добавить элемент в ресурс[[переменная]]:

    А в глобальную переменную можно записать данные чтобы они использовался не рандомно, а по очереди?
    Можно использовать глобальную переменную без повторов и бесконечно? Ресурс всё это позволяет, поэтому очень удобен, но как справится с тем же самым в переменных - я даже предположить не могу

    Да, массив данных в объекте в глобальной переменной это позволит.
    тестовый скрипт

    @kroda said in Как добавить элемент в ресурс[[переменная]]:

    @Fox said in Как добавить элемент в ресурс[[переменная]]:

    То есть чтобы использовать переменные в имени ресурса, необходимо будет работать в "выполнить код", но такой подход @support не поддерживает.

    Я сделал, все получилось, только чтобы в запросе отправлялся {{ресурс}} а не "RESOURCE_995995". Я вставил "RESOURCE_995995" в создать переменную и шлю переменную. Все отправляется как надо.

    Собственно один вопрос остался не решенным, вот этот код удаляет {{ресурс}}, но как правильно составить синтоксис для такого кода?:

    _R("res_prefixi" + VAR_THREAD_INDEX).die()
    _R("res_prefixi" + VAR_THREAD_INDEX) = null
    RSync("res_prefixi" + VAR_THREAD_INDEX)
    log("Строка удаляется.")
    

    Здесь надо писать [["название ресурса"]]

    Но у меня название ресурса это переменная VAR_THREAD_INDEX

    В:

    RCreate
    RInsert
    RSync
    

    Работает, а в _R - нет.

    А у сапорта в апи тоже удаляется ресурс, от апи ничуть не легче:

    var index = lines.indexOf("account1")
    lines.remove(index)
    lines.sync()
    

    Ни чего не понял. Что вы хотите сделать то?

    @kroda said in Как добавить элемент в ресурс[[переменная]]:

    @Fox

    А еще Ваша копилка больше не существует

    Копилка работает, только почему то киви возвращает ошибку, если пользователь не авторизован (после авторизации в киви копилка становится доступной). Пока веду переговоры с поддержкой

  • @Fox said in Как добавить элемент в ресурс[[переменная]]:

    Ни чего не понял. Что вы хотите сделать то?

    Я хочу удалить через код - элемент ресурса.

  • @kroda said in Как добавить элемент в ресурс[[переменная]]:

    @Fox said in Как добавить элемент в ресурс[[переменная]]:

    Ни чего не понял. Что вы хотите сделать то?

    Я хочу удалить через код - элемент ресурса.

    Через api ресурсов:

    //Получает элемент по индексу.
    at(index)
    
    //Удалить элемент по индексу.
    remove(index)
    
    //Синхронизировать ресурс, для файла - поместить все элементы ресурса в файл.
    sync()
    

    Кстати кнопку благодарности уже починили :D

    Тестовый проект

  • @Fox said in Как добавить элемент в ресурс[[переменная]]:

    Ни чего не понял. Что вы хотите сделать то?

    Да, по апи, Я уже давно разобрался. Просто пока не попробовал удалить через RESOURCE_995995, ничего не получалось:

    [[VARIABLE]] = "res_prefixi" + VAR_THREAD_INDEX
    false
    falseRS([[VARIABLE]], true, false)!
    false
    falseRESOURCE_995995 = _result().get()
    

    А потом удалил текущий ресурс через

    var lines = RMap("res_prefixi" + VAR_THREAD_INDEX)
    var index = lines.indexOf(RESOURCE_995995)
    lines.remove(index)
    lines.sync()
    

    Сейчас тестирую как этот цирк ведет себя в многопотоке. Я ценю конечно, что Вы выше скинули проект с готовыми кодами с работой в переменных. Но с ноля я не могу написать кодом то, что нужно именно мне. Как пример, я понял, что если понимать код, можно тоже самое сделать с переменными - скорость повысится, обращений к жд нет. Но как факт - мне это ничего не дает (я про пост с переменными). Через ресурсы получилось 3 штуки "выполнить код". Далеко от идеала, но вроде пока работает. Кнопку из подписи прожал - спасибо

  • Имеются ресурсы Товар 1, Товар 2, Товар 3, переменная ITEM_NUMBER значение которой равно 1 и потом оно увеличивается на 1. Запускаю цикл и необходимо чтобы получалась такая связка Товар ITEM_NUMBER и подставлялось значение ресурса Товар 1 и т.д. Понимаю, что надо использовать "Выполнить код", но не могу понять до конца, что прописать. Куда глянуть или дайте совет как сделать.

  • @Etrus said in Как добавить элемент в ресурс[[переменная]]:

    Имеются ресурсы Товар 1, Товар 2, Товар 3, переменная ITEM_NUMBER значение которой равно 1 и потом оно увеличивается на 1. Запускаю цикл и необходимо чтобы получалась такая связка Товар ITEM_NUMBER и подставлялось значение ресурса Товар 1 и т.д. Понимаю, что надо использовать "Выполнить код", но не могу понять до конца, что прописать. Куда глянуть или дайте совет как сделать.

    Я раза с четвёртого только понял, что вы хотите. Очень похоже на костыль, так как проще всего использовать 3 условия, чем мало понятный код в действии "выполнить код".

    RMap("res" + [[CYCLE_INDEX]]).insert([[CYCLE_INDEX]])
    RMap("res" + [[CYCLE_INDEX]]).sync()
    

    Тестовый скрипт

  • @Fox
    Видимо плохо объяснил, но не работает, прикладываю скрипт, что мне надо получить. Если это можно выполнить не через выполнить код, то подскажите как, я почитаю в мануале.
    alt text

    11111.xml

  • This post is deleted!
  • @Etrus said in Как добавить элемент в ресурс[[переменная]]:

    @Fox
    Видимо плохо объяснил, но не работает, прикладываю скрипт, что мне надо получить. Если это можно выполнить не через выполнить код, то подскажите как, я почитаю в мануале.

    11111.xml

    В упор не понимаю, что вы хотите реализовать. Может опишите изначальную задачу? Для чего вы пытаетесь такой велосипед собрать?

  • @Fox
    Покупка товара в интернет магазине (али), ссылки на товар вставляются в ресурс (количество товара пока от 1 до 3). Сейчас для каждого товара прописан отдельно код, он одинаковый за исключением ссылки на товар (через if прописано выполнение кода, если есть ссылка на товар и выбор характеристик, если они есть). Хочу упростить код, используя цикл, где в "загрузить" будет вставлять ссылка на ресурс: товар 1, товар 2, товар 3. Для этого хочу, чтобы получалась ссылка на ресурс, то есть {{Товар [[Cycle Index]]}} должно для "загрузить" восприниматься как ресурс {{Товар 1}}. Может есть вариант проще для цикла, но у меня пока только такой вариант в голову пришел.

  • @Etrus said in Как добавить элемент в ресурс[[переменная]]:

    @Fox
    Покупка товара в интернет магазине (али), ссылки на товар вставляются в ресурс (количество товара пока от 1 до 3). Сейчас для каждого товара прописан отдельно код, он одинаковый за исключением ссылки на товар (через if прописано выполнение кода, если есть ссылка на товар и выбор характеристик, если они есть).

    Вы используете три разных ресурса "из файла"? Зачем вообще разделять ссылки, если код у вас один?

    Хочу упростить код, используя цикл, где в "загрузить" будет вставлять ссылка на ресурс: товар 1, товар 2, товар 3.

    Используйте условия только для действия "Загрузить", зачем копировать весь код 3 раза?

    Для этого хочу, чтобы получалась ссылка на ресурс, то есть {{Товар [[Cycle Index]]}} должно для "загрузить" восприниматься как ресурс {{Товар 1}}. Может есть вариант проще для цикла, но у меня пока только такой вариант в голову пришел.

    Выше я привёл пример использования api для работы с ресурсами, но упрощать в противовес читабельности не стоит. Вы сами в последствии запутаетесь, что и как у вас в скрипте происходит

  • @Fox

    1. Да, три ресурса, но не из файла, а из строки, туда вносится ссылка на товар. Разделять необходимо, так как товары бывают с характеристиками, которые указываются для каждого файла отдельно. Кроме того, потом информация нужна для записи значений в файл, куда еще кое какая информация записывается к каждой ссылке на товар.
    2. У меня два условия проверяются через if (есть ли ссылка в строке, имеет товар характеристики).
    3. Думал упростить код, чтобы в случае изменения на сайте меньше переделывать было.
  • @Etrus said in Как добавить элемент в ресурс[[переменная]]:

    @Fox

    1. Да, три ресурса, но не из файла, а из строки, туда вносится ссылка на товар. Разделять необходимо, так как товары бывают с характеристиками, которые указываются для каждого файла отдельно. Кроме того, потом информация нужна для записи значений в файл, куда еще кое какая информация записывается к каждой ссылке на товар.
    2. У меня два условия проверяются через if (есть ли ссылка в строке, имеет товар характеристики).
    3. Думал упростить код, чтобы в случае изменения на сайте меньше переделывать было.

    Создайте список с элементами ресурсов и используйте их в цикле

    2c59a8c1-7008-415d-b17a-d24199ed3890-изображение.png

    bcbb5ea3-b51b-4cf8-90b1-06ec08e1f38d-изображение.png

    В переменной [[FOREACH_DATA]] будет данные из ресурса, эту переменную вы можете проверять, загружать и использовать как душе угодно.

    Тестовый скрипт

  • @Fox
    Спасибо, но так можно сделать, если все товары без характеристик, то есть загрузил страницу, добавил товар в корзину и дальше по кругу. У меня реализовано через ресурсы еще выбор характеристик через if. В общем, есть ресурсы Товар 1, Товар 2, Товар 3, надо чтобы подставляемый текст такого плана: {{Товар [[CYCLE_INDEX]]}}, понимался басом в цикле как ресурс Товар 1, Товар 2, Товар 3, если так нельзя через какой-нибудь костыль сделать, то оставлю как есть. По другому, что хочу сделать не смогу, все будет завязано на подставляемой переменной [[CYCLE_INDEX]].

  • @Etrus, а не легче сделать ресурс из файла и создать файл такого формата ссылка:доп_данные и потом просто парсить ресурс по переменным

  • @Etrus said in Как добавить элемент в ресурс[[переменная]]:

    @Fox
    Спасибо, но так можно сделать, если все товары без характеристик, то есть загрузил страницу, добавил товар в корзину и дальше по кругу. У меня реализовано через ресурсы еще выбор характеристик через if. В общем, есть ресурсы Товар 1, Товар 2, Товар 3, надо чтобы подставляемый текст такого плана: {{Товар [[CYCLE_INDEX]]}}, понимался басом в цикле как ресурс Товар 1, Товар 2, Товар 3, если так нельзя через какой-нибудь костыль сделать, то оставлю как есть. По другому, что хочу сделать не смогу, все будет завязано на подставляемой переменной [[CYCLE_INDEX]].

    Сделать можно, но меня не покидает ощущение, что вы сами себе создаёте проблемы на пустом месте.

    Действие "выполнить код"

    RS("res" + [[CYCLE_INDEX]], false, false)!
    [[RESOURCE_]] = _result().get()
    

    07b7e6ca-2a03-4638-845f-ffe7b945a937-изображение.png

    Тестовый скрипт

  • @Fox
    Спасибо, то что нужно. Возможно Вы и правы, что я усложняю задачу, но если я правильн все рассчитал, то должно получиться очень компактно и удобно. Помимо Товара 1, 2, 3, есть еще Ряд 1, 2, 3. Получается, что у меня будет цикл с товарами, в котором будет еще цикл с харктеристиками. Я отпишусь, получилось ли реализовать задумку, еще раз спасибо за помощь и терпение :)

  • @Etrus Шаб хоть Фоксу скинь :) А то я вот какой день наблюдаю и Реально Вроде смысл то понятен Но как я например даж Помогаю Скринами там и то хоть наглядней, согласитесь :)
    Короче без Шаба тут не поймёш что вам надо Цикл или Или мол :)))