Обсуждение работы программы
| |
Rover_M51 | Дата: Среда, 24.05.2017, 16:39 | Сообщение # 1441 |
Рядовой
Группа: Пользователи
Сообщений: 6
Статус: Offline
| При поиске серии multilib берет sequence name не из раздела <title-info>, а из более позднего <publish-info>. В результате имеем (например в названии файла) вместо серии "Зов из бездны-01" - серию "Абсолютное оружие". А вот если переменную сначала обнулять, а потом перед присвоением значения проверять ее "ненулевость", то серия будет определяться по первому значению.
|
|
| |
drserj | Дата: Среда, 24.05.2017, 16:50 | Сообщение # 1442 |
Генералиссимус
Группа: Администраторы
Сообщений: 4693
Статус: Offline
| Цитата Rover_M51 ( ) При поиске серии multilib берет sequence name не из раздела <title-info>, а из более позднего <publish-info>. Если про онлайн-библиотеки (либрус или флибуста), то мультилиб если что и берет, то это данные из базы, которую предоставляет библиотека. сам он файлы не парсит (исключая модуль приватной библиотеки). Данные о серии берутся первые, которые получены в результате запроса списка серий, принадлежащих книге. Вопрос о значимости серий стоял давно, каждый видит решение по-своему. Как минимум, есть серии авторские, издательские, пользовательские. Узнать какая есть какая, на момент написания программы, возможности не было, серии равноправны. Может что-то за это время и изменилось, но, анализируя не так давно базу, особых изменений не увидел. По поводу нулёвости - сие не есть признак типа серии. Где-то не прописали, где-то не исправили... А где-то недавно наткнулся на книгу, входящую в более чем десяток серий. И все были с номером. Резюме: что дают то и имеем, пока не будет структурирована более детально база самой библиотеки - программа не сможет самостоятельно решать этот вопрос. Если про модуль приватной библиотеки - то тут так же никто не разбирает тип серии, ибо использует алгоритм онлайн-библиотек.
drSerj
|
|
| |
lordkor | Дата: Среда, 24.05.2017, 19:19 | Сообщение # 1443 |
Лейтенант
Группа: Друзья
Сообщений: 56
Статус: Offline
| Цитата drserj ( ) Этот вопрос возник, видимо, в результате не совсем правильного понимания, зачем эта функция "Последние поступления" - это то, что отобрано но не обработано, не просмотрено и т.д. То есть, настоятельная рекомендация - просмотрел - удали. Здесь просто все зависит от сценария использования MultiLib очень мощная система в плане тонкой настройки действий с базой – но вторая сторона подобной мощи как раз сложность выполнения простых постоянных действий, для которых нет заскриптованных шорткатов Для меня «Новинки» - это автоматическая группировка новых книг по определенным критериям, задаваемым фильтрами. Меня пока как раз устраивает, что они там лежат Просто неудобно просматривать и отбирать для скачивания и сортировки по группам те книги, которые появились с момента предыдущего импорта. В MyHomeLib это приходилось делать через поиск с фильтрами, вручную выставляя дату (которую еще фиг вспомнишь). Здесь гораздо удобнее – есть четкая индикация последних новинок. Не хватает последнего штриха Насчет удаления – даже в голову не приходило Так удобно лежит Если логика работы программы предполагает очистку «новинок», может тогда это дело автоматизировать, устанавливая в настройках «возраст» новинок для удаления с возможности отключения автоматики? Поясню свой сценарий – у меня в «новинках» сейчас есть отдельные группы для: - избранных авторов - жанра - поджанра Соответственно, все книги автоматом валятся в эти группы, и я могу сразу увидеть, что появилась новая книга: - у одного из моих предпочитаемых авторов – и ее практически точно надо будет читать J - в интересующем меня поджанре, и ее скорее всего можно будет почитать - в интересующем меня жанре, и надо посмотреть, может быть ее тоже надо бы как-нибудь попробовать почитать Сейчас для этого сценария мне более менее удобно использовать «новинки». Как это сделать иначе, я пока не нашел. Единственное, чего тут не хватает – выключить показ «старых» «новинок», чтобы просмотреть только самые свежие.
Цитата drserj ( ) Но, коль всё-таки проблема возникла - будем решать. Ну, «проблема» - очень сильно сказано – так, некоторое неудобство Или отсутствие бОльшего удобства
Цитата drserj ( ) В принципе - вариантов несколько. 1.Посмотреть минимальный bookid который нас интересует и в заголовке таблицы и указать в фильтре по этому столбцу(Выбор..) в появившемся фильтре указываем этот букид
2.Можно добавить последние поступившие в отдельную группу и развлекаться как угодно
3.Тупо удалить из новинок всё лишнее 1. Это каждый раз искать надо и руками устанавливать. Гибко для разового поиска, но неудобно для постоянного использования. 2. А как их автоматом в отдельную группу добавлять? Вроде бы не нашел такого флага для фильтра. Разве только опять «после прочтения сжечь», чего как раз и хочется избежать. Ну и опять же лишаемся автосортировки новых поступлений по разным фильтрам. 3. Тупо не хочу
Цитата drserj ( ) Да, и так будет. Происходит полное обновление базы, происходит не только дополнение новых данных, но и изменение старых. Нет ни какой гарантии, что тот автор (серия, жанр и т.д.) останутся без изменений. Это одна причина. Вторая причина - перечитывание всех запросов - очень длительная операция, на слабых машинах это очень неудобно. Это все понятно. Но, как мне кажется, запомнить последний authorID и bookID и просто открыть этого автора на этой книге не должно быть настолько сложно технически – все запросы, конечно, не надо перечитывать, просто чтобы с текущей книги не срывало.
Цитата drserj ( ) думал уже... возможно сделаю, там хороший кусок работы надо будет сделать. А сейчас в приоритете Unilib. Отлично. Будем ждать и надеяться А то когда два дела сразу пытаешься делать, такая фигня в результате выходит...
Цитата drserj ( ) а так же один автор, одна серия и т д.... А как впихнуть невпихуемое? На самом деле проблема в последствиях. А именно в сортировке и группировке. Не смогу я тогда выполнять эти операции в таблице.Аналогично и с жанрами и с сериями. Думал над этой проблемой с момента создания программы - так и не надумал... Есть вариант через SQL-запрос, но это из пушки по воробью... Это все понятно, что дело совсем не в лени и нежелании Один автор и серия – да и фиг бы с ними, это не так страшно, да и впихнуть их реально проблематично. А вот с жанрами основная проблема в том, что они часто криво проставляются – и тогда в одном первом жанре смысла нет вообще. Грубо говоря, если в той же затертой ЛитРПГ первым жанром поставили «боевую фантастику» или «фэнтэзи», чем страдает большинство библиотекарей, а «ЛитРПГ» сунули в конец, то вывод в таблице только первого жанра скорее собьет с толку, чем предоставит полезную информацию – так и приходится выбирать каждую строчку и смотреть описание внизу. Как сделать, чтобы все работало, советовать не возьмусь Просто отклик со стороны относительно свежего пользователя с еще не замыленным взглядом Не смертельно, но было бы здорово, если бы было еще лучше Навскидку – тупо формировать текстовое поле с перечисление жанров и выводить его в таблице, а для сортировки и прочего использовать первое реальное, как сейчас. Дешево и сердито Еще пара вопросов вдогонку: По строке в списке новинок сложно понять, стоит ли качать книгу неизвестного автора. В МультиЛибе есть классная штука – открыть страницу книги. Проблема в том, что сейчас она не работает: адрес формируется торовский (домен берется из соответствующих настроек), а передается все дефолтовому браузеру, который работает через прокси. В результате приходится копировать адрес из открывшегося браузера и вставлять его в торовский браузер. Было бы здорово это отремонтировать. Первое, что приходит в голову – добавить в настройки адрес домена для страниц книг. Идеальный вариант – делать свой собственный мини-браузер с известно чем :), что не слишком разумно Второй вариант – тащить по правому клику аннотацию (а то и с отзывами) – но это тоже монструозно Хотелось бы иметь возможность редактировать информацию о книге в своей базе – поменять жанр, серию, номер в серии – очень часто они прописаны неправильно. Есть с этим какие-то технические сложности? Насколько я понимаю, эта информация должна считываться из файла книги один раз и вноситься в базу, откуда потом берется для отображения, сортировки, обработки и т.п. По идее, ничто не должно мешать поменять в записи один ID на другой. Или я что-то упускаю в тонкостях работы с базой? Работа с группами. Правой кнопкой добавляем книгу в группу. Чтобы название группы отобразилось в соответствующем поле таблицы, нужно обязательно повторить запрос к базе – например, открыть другого автора и вернуться к нужному. Никак нельзя сразу отрисовать? Или для этого всю процедуру вывода переделывать надо, изначально рассчитанную именно на вывод сформированного результата обращения к базе? Новая книга отслеживаемого поджанра, при этом поджанр указан криво. Засовываем ее в группу «к прочтению» и группу поджанра. Начинаем читать – классно, «вмемориз», то бишь, в группу «Избранное». Дочитали, правой кнопкой «переместить в «Прочитанное» - и книга радостно исчезает из всех групп – и из поджанровой, и из «избранного». Может, имеет смысл при перемещении менять на целевую группу только текущую?
Еще раз сорри, ежели какие вопросы совсем тупые или уже не раз объясненные - ну очень богатая возможностями программа, потому запросы к ней высоки, а разобраться со всем с налету не выйдет Но все равно MultiLib ближе всего к тому идеальному инструменту. который нужен мне
|
|
| |
drserj | Дата: Среда, 24.05.2017, 21:22 | Сообщение # 1444 |
Генералиссимус
Группа: Администраторы
Сообщений: 4693
Статус: Offline
| Цитата lordkor ( ) Здесь просто все зависит от сценария использования Это конечно... У меня в более старых версиях народ баги использовал как фичи и в итоге, после их устранения негодовал по этому поводу
Цитата lordkor ( ) Если логика работы программы предполагает очистку «новинок», может тогда это дело автоматизировать, устанавливая в настройках «возраст» новинок для удаления с возможности отключения автоматики? Нет, это жестоко. Если я по какой-то причине не смог ранее импортировать базу, а время прошло...Вышел из отпуска а новинки пустые
Цитата lordkor ( ) Но, как мне кажется, запомнить последний authorID и bookID и просто открыть этого автора на этой книге не должно быть настолько сложно технически Да нет, конечно... Открою сташшшшную тайну, оно даже было... Но потом было убрано по вышеуказанным причинам.
Цитата lordkor ( ) Сейчас для этого сценария мне более менее удобно использовать «новинки». Как это сделать иначе, я пока не нашел. а поиск с последующим добавлением найденного в отдельную группу? Ведь на самом деле основа программы это именно поиск, а все эти группы по авторам, сериям, жанрам - просто фиксированный поиск... В либгене, например, нет ни авторов ни серий ни жанров. Одна строка поиска. Но возможностей - гораздо больше, ибо структура базы более продумана именно в этой части (в другой - полный п, но это отдельная песня)
Цитата lordkor ( ) А вот с жанрами основная проблема в том, что они часто криво проставляются с жанрами, я бы сказал, вообще проблема... Но она изначальна и не от меня зависит.
Цитата lordkor ( ) Просто отклик со стороны относительно свежего пользователя с еще не замыленным взглядом Дело в том, что эта проблема со времен создания программы, когда замыленых взглядов кроме меня еще ни у кого не было Но проблема - да, она есть, серьезная, решений пока нет...
Цитата lordkor ( ) Навскидку – тупо формировать текстовое поле с перечисление жанров и выводить его в таблице, а для сортировки и прочего использовать первое реальное, как сейчас. Дешево и сердито не получится, таблица - готовый наворочаный сторонний продукт, такой функции он не поддерживает. Есть варианты решения в смысле если очень грубо - таблицы в таблице, т.е. Ячейка жанра содержит в себе толпу ячеек жанра. Но избыточность информации приводит к неюзабельности такой таблицы. Да и процесс группировок/сортировок я там слабо представляю. Про скорость работы такой таблицы на тысячах записей я умалчиваю.
drSerj
|
|
| |
drserj | Дата: Среда, 24.05.2017, 21:38 | Сообщение # 1445 |
Генералиссимус
Группа: Администраторы
Сообщений: 4693
Статус: Offline
| Цитата lordkor ( ) Проблема в том, что сейчас она не работает: адрес формируется торовский (домен берется из соответствующих настроек), а передается все дефолтовому браузеру, который работает через прокси. жесть Кстати, сама библиотека без контента имеется тут: http://flisland.net, может как-то задействовать...
Цитата lordkor ( ) Второй вариант – тащить по правому клику аннотацию (а то и с отзывами) – но это тоже монструозно страшная тайна, о которой знаю только я - для флибусты аннотацию можно импортировать из базы Просто это нехилый файлик, который тянуть не каждый сможет. Это файлик lib.b.annotations.sql.gz который в импорте я закомментил для пользователей Но раскомментив некоторые строчки мы имеем полную базу аннотаций. Отзывы тоже есть, но я их к сожалению не использовал.
Цитата lordkor ( ) Хотелось бы иметь возможность редактировать информацию о книге в своей базе – поменять жанр, серию, номер в серии – очень часто они прописаны неправильно. Есть с этим какие-то технические сложности? Есть. Как я уже писал выше - для флибусты база полностью обновляемая. Все изменения будут затерты при следующем импорте. Исключение - приватная коллекция, там эти функции есть.
Цитата lordkor ( ) Работа с группами. Цитата lordkor ( ) Никак нельзя сразу отрисовать? можно... но не делается. Почему? Если в таблице 1000 строк - уже почувствуется, потому-как проблема не в отрисовке, а в полном перечитывании запроса. А иначе - как?
Цитата lordkor ( ) Дочитали, правой кнопкой «переместить в «Прочитанное» - и книга радостно исчезает из всех групп – и из поджанровой, и из «избранного». этого точно быть не должно... Если можно - конкретный пример книги - bookid
Цитата lordkor ( ) разобраться со всем с налету не выйдет даже больше скажу - сам всех возможностей так и не знаю
Цитата lordkor ( ) MultiLib ближе всего к тому идеальному инструменту. который нужен мне Возможно, ближе был бы unilib, но его пока еще нет
drSerj
|
|
| |
lordkor | Дата: Среда, 24.05.2017, 21:45 | Сообщение # 1446 |
Лейтенант
Группа: Друзья
Сообщений: 56
Статус: Offline
| Цитата drserj ( ) У меня в более старых версиях народ баги использовал как фичи и в итоге, после их устранения негодовал по этому поводу Так это оно завсегда так - в хорошем софте даже баги работают лучше, чем фичи в плохом
Цитата drserj ( ) Нет, это жестоко. Если я по какой-то причине не смог ранее импортировать базу, а время прошло...Вышел из отпуска а новинки пустые А кто говорит, что "возраст" - исключительно число дней? Прикинуть комбинацию критериев с запасом. Типа даты позапрошлого обновления. Но как по мне, так все равно чистить жалко
Цитата drserj ( ) а поиск с последующим добавлением найденного в отдельную группу? Ведь на самом деле основа программы это именно поиск, а все эти группы по авторам, сериям, жанрам - просто фиксированный поиск... Так в том-то и фишка, что это уже готовая автосортировка. А в поиске кажный раз ручками фильтр выбрать, да глубину подстроить. Не, на фиг, на фиг Мне этого дело в МайХоумЛибе хватило, так что как тут "новинки" увидел, да еще с выделением "последнего обновления" - вот оно, счастье-то... ну, почти А что до фиксированного поиска - в этом же весь цимес и есть. Тонкий тюнинг - это здорово, когда он есть и позволяет найти все, что надо, когда вдруг понадобится. Но ить искусство инжиниринга состоит как раз в том, чтобы максимально автоматизировать рутинные действия - хоть багом, хоть фичей А поиск - что поиск. Поиск - это хорошо. Но, чтобы найти что-то нужное, надо четко сформулировать, что именно нужно - и это и есть вторая основа программы: комбинации критериев для поиска
Цитата drserj ( ) с жанрами, я бы сказал, вообще проблема... Но она изначальна и не от меня зависит. Это да Ну, тут уже разговор исключительно о том, что таки зависит
Цитата drserj ( ) не получится, таблица - готовый наворочаный сторонний продукт, такой функции он не поддерживает. Оп-па... Тогда да Это изящно уже фиг решишь, результат дюже затратный будет Оно того не стоит. Жаль, очень жаль
|
|
| |
drserj | Дата: Среда, 24.05.2017, 22:02 | Сообщение # 1447 |
Генералиссимус
Группа: Администраторы
Сообщений: 4693
Статус: Offline
| Цитата lordkor ( ) Но как по мне, так все равно чистить жалко а чего жалеть-то, если есть возможность отследить новинки, задав начальный bookid??? Меню Библиотека - Поиск новинок
Цитата lordkor ( ) А в поиске кажный раз ручками фильтр выбрать, да глубину подстроить. ых... а как же метод научного тыка, если лень доку почитать? Сохранение параметров поиска для кого? А чтение?
Цитата lordkor ( ) максимально автоматизировать рутинные действия угу... А завтра будем ждать, пока комп сам найдет то, что мы хочем, но об этом еще не знаем
Цитата lordkor ( ) Ну, тут уже разговор исключительно о том, что таки зависит для сетевой библиотеки? Ой, вряд ли от меня что-то зависит...
Цитата lordkor ( ) Это изящно уже фиг решишь Да может и решаемо оно, но в одном лишь гриде функций больше чем в программе В программе только очень малая часть возможностей задействована.
drSerj
|
|
| |
lordkor | Дата: Среда, 24.05.2017, 22:50 | Сообщение # 1448 |
Лейтенант
Группа: Друзья
Сообщений: 56
Статус: Offline
| Цитата drserj ( ) Фиксированные решения такого рода чреваты сложностью адаптации к вероятным изменениям То бишь, если жестко прописать в коде, а они домен сменят, то опаньки, те же грабли, вид в профиль. Поэтому все, что может измениться, однозначно делать регулируемым (хех, кому я объясняю )
Цитата drserj ( ) для флибусты аннотацию можно импортировать из базы Просто это нехилый файлик, который тянуть не каждый сможет. Именно Потому и прикидываю обходные варианты, чтоб малой кровью Вся суть как раз в том, чтобы не тянуть к себе все подряд, а только нужное - а для этого посмотреть ДО того, как тянуть.
Цитата drserj ( ) Отзывы тоже есть, но я их к сожалению не использовал. Ну, в моей практике пользования они нужны довольно редко и один раз - тягать ради этого "шоб було" каждый раз на винт кучу мусора - не. нафиг, нафиг. Тут по-хорошему нужна схема "Дай, надо! - Ну, на"
Цитата drserj ( ) для флибусты база полностью обновляемая. Все изменения будут затерты при следующем импорте. Ясно. Тогда да. Городить огород с бэкапом и последующим восстановлением ручных изменений не есть хорошо. Цитата drserj ( ) проблема не в отрисовке, а в полном перечитывании запроса Так я как раз о том и говорю, что не перечитывать запрос, а менять значения в самом "буфере", который отрисовывается. То есть, выводится не фактическое состояние базы после внесения изменений, а предполагаемое - ведь мы же знаем, как мы попросили изменить эти значения, значит может предположить, что будет в результате - и это показывать, пока не понадобится сделать реальный запрос. Но если отрисовкой тоже "закрытая" процедура занимается, тогда да, так не выйдет.
Цитата drserj ( ) этого точно быть не должно Проверил - действительно, все правильно работает. Видимо, какой-то локальный глюк случился, а может я чего не так нажал, и "оно само, я ничего не делал" Вопрос снимается, приносятся искренние извинения
Цитата drserj ( ) сам всех возможностей так и не знаю логично
Цитата drserj ( ) Возможно, ближе был бы unilib, но его пока еще нет Ну, надеюсь, предоставится возможность проверить это предположение на практике
Пропустил в предыдущем по возврату на книгу:
Цитата drserj ( ) оно даже было... Но потом было убрано по вышеуказанным причинам. Пока все равно не вполне понял препятствие. Вроде бы, bookID и authorID на флибусте имеют сквозную нумерацию? То есть, максимум, что может произойти с этой парой - они вообще исчезнут из базы. ОК, пусть даже эти ID вдруг дали кому-то другому - ничего страшного. Просто выполняем запрос "показать список книг lastAuthorID". Если такого автора нет - идем в начало, как сделано сейчас. Если есть, ищем книгу с lastBookID и ставим на нее курсор. Нет такой - на первую книгу в списке. Форс мажор, теперь под этим айди другой автор/книга - ну и что? Ничем не хуже начала базы, а вероятность минимальна. Долгий поиск на слабых машинах - так на них и так загрузка/обновление долго идти будут, переход на нужную книгу погоды не сделает. В крайнем случае сделать опять же птичку в настройках "запоминать последнюю книгу" (кстати, "последние открытые" - то, чего мне очень не хватало в МХЛ - отдельное спасибо! Еще бы помимо открытия на чтение и в базе на эту книгу перескакивать ). В общем, поскольку код не знаю, то и критических проблем не вижу Лично мне это было бы очень удобно. За других, понятно, сказать не могу Добавлено (24.05.2017, 20:50) ---------------------------------------------
Цитата drserj ( ) есть возможность отследить новинки, задав начальный bookid Так его сначала узнать надо, нужный-то И опять же ручками, ручками
Цитата drserj ( ) ых... а как же метод научного тыка, если лень доку почитать? Сохранение параметров поиска для кого? Не, ну настолько плохо-то обо мне зачем думать? С того и начал, как в МХЛ. Но каждый раз шаблон выбирать для поиска, если их несколько (авторы, поджанры, жанры) ручками надо - а тут оно все само делается. Лепота Лень - двигатель прогресса! Все лучшие программы были написаны потому, что программисту было лень тупо делать ручками одни и те же действия
Цитата drserj ( ) А завтра будем ждать, пока комп сам найдет то, что мы хочем, но об этом еще не знаем Не, это уже не ко мне. Машина должна работать, а человек думать! Я правильный запрос, чего мне надо, составлю - а машина пущай мне все это ищет, по ящичкам раскладывает и свежее на отдельную тарелочку выкладывает. Чтобы я пришел - и вот оно все. Зря я что ли думал и четко машине формулирова, что куда она мне положить должна?
Цитата drserj ( ) для сетевой библиотеки? Ой, вряд ли от меня что-то зависит... На сервере - однозначно нет, так даже вопрос не стоит. А вот в локальной копии - тут уже хозяин - барин.
Цитата drserj ( ) Да может и решаемо оно, но в одном лишь гриде функций больше чем в программе Там ключевое слово - "изящно" А так оно да, у меня знакомый однажды лом сломать умудрился посредством грубой силы, неудачно приложенной
Цитата drserj ( ) В программе только очень малая часть возможностей задействована. Понятное дело. Тут уже вопрос соответствия затрат результату, как всегда. И вообще, разработку программы нельзя завершить - ее можно только прервать
|
|
| |
drserj | Дата: Четверг, 25.05.2017, 08:20 | Сообщение # 1449 |
Генералиссимус
Группа: Администраторы
Сообщений: 4693
Статус: Offline
| Цитата lordkor ( ) Фиксированные решения такого рода чреваты Да кто ж спорит... Но и десятки настроек на одно и то же - счастья не добавят.... А баланс соблюсти тяжело, неизвестно что поменяют завтра. Я вообще не понимаю, зачем такие сложности с тором, подменой ссылок и т д. Поставить AdVor, который делает всё то же, но прозрачно, незаметно и нет всех вышеописанных проблем.
Цитата lordkor ( ) Вся суть как раз в том, чтобы не тянуть к себе все подряд, а только нужное - а для этого посмотреть ДО того, как тянуть. Тут дело религии... Я лично тяну всё, пока есть возможность это хранить - буду хранить...
Цитата lordkor ( ) Так я как раз о том и говорю, что не перечитывать запрос, а менять значения в самом "буфере" И заменить один запрос кучей мелких Нет, на самом деле я так делаю для рейтинга, но мне не сильно нравится такая реализация...
Цитата lordkor ( ) Вроде бы, bookID и authorID на флибусте имеют сквозную нумерацию? я тоже так думал... На самом деле они умудряются затыкать дырки в базе, что не является чем-то неприемлемым, но и радости не добавляет. Нет, я согласен, можно сделать практически всё, вопрос в надобности и цене решения. За последние несколько лет по этому моменту вопросов не возникало, следовательно, не так оно и нужно. А программа при этом не перегружена кодом
Цитата lordkor ( ) Так его сначала узнать надо, нужный-то уууууу.... как всё запущено Тогда скорее надо делать голосовое управление, а еще лучше - телепатическое
Цитата lordkor ( ) А вот в локальной копии - тут уже хозяин - барин. Ну, локальная она чисто условно. Она не изменяемая а полностью переписываемая. Если больше не импортировать базу - да, всё прекрасно. Но тогда смысл в такой "онлайновости" ?
Цитата lordkor ( ) у меня знакомый однажды лом сломать умудрился посредством грубой силы сломать можно всё, но опошлять интеллектуальную беседу не будем
Цитата lordkor ( ) И вообще, разработку программы нельзя завершить - ее можно только прервать угу... и хотелось бы, и рука не подымается...
drSerj
|
|
| |
Rover_M51 | Дата: Четверг, 25.05.2017, 08:44 | Сообщение # 1450 |
Рядовой
Группа: Пользователи
Сообщений: 6
Статус: Offline
| Понял. Совсем не учел, что данные не парсились, извини дурака. Сейчас попробую как парсинг в этом плане сработает.
Итак, после импорта (Искать+обработать) из файлов библиотеки *.fb2: Пример: Книга Злотникова "Герцог Арвендейл", авторская серия "Арвендейл" № 2, Издательская серия "Магия фэнтези" Наблюдаем в таблице Авторы - серия "Магия фэнтези" №88 При отправке файла на устройство получаем - Магия фэнтези-88 Герцог Арвендейл.fb2 То есть отобрать для прочтения на смартфоне книги серии "Арвендейл" без доработки напильником не получается.
Так что программа при парсинге тоже в переменную sequence берет не первое, а последнее встретившееся значение, что не есть хорошо.
Сообщение отредактировал Rover_M51 - Четверг, 25.05.2017, 08:45 |
|
| |
drserj | Дата: Четверг, 25.05.2017, 10:07 | Сообщение # 1451 |
Генералиссимус
Группа: Администраторы
Сообщений: 4693
Статус: Offline
| Цитата Rover_M51 ( ) Так что программа при парсинге тоже в переменную sequence берет не первое, а последнее встретившееся значение, что не есть хорошо.
Не, берет она всё правильно, подряд. Поскольку в базе у серии нет указания типа - все серии равноправны и находятся неизвестно в каком порядке При выборке (вот не помню точно, возможно даже в разных местах - по разному) берется первая в списке серия, но вот как при этом список отсортирован - не помню уже. В общем, решение подобной проблемы может быть только одно - ввод поля "тип серии" и вывод в программе серии нужного типа. Но, если серий несколько - тут уж не знаю как приоритеты выставлять.
Цитата Rover_M51 ( ) Так что программа при парсинге тоже в переменную sequence берет не первое, а последнее встретившееся значение, что не есть хорошо.
при парсинге она берет всё, а вот при выборке запросом - первое попавшееся, ибо разницы нет.
И всё-таки вопрос: мы рассматриваем сетевые библиотеки (либрус, флибусту) или локальную (приватную)?
drSerj
|
|
| |
Rover_M51 | Дата: Четверг, 25.05.2017, 10:47 | Сообщение # 1452 |
Рядовой
Группа: Пользователи
Сообщений: 6
Статус: Offline
| Парсил я приватную библиотеку, свою личную. Не архивы, а просто файлы *.fb2 Скорее всего парсер поочередно присваивает переменной все встреченные значения sequence, заменяя предыдущее на новое. Чтобы сохранять первое встреченное, перед присвоением нужна проверка на первичное (пустое или нулевое) значение и если переменная уже не пустая, то ее не менять. Тогда серия будет именно авторской. Очень сомневаюсь что кому-то нужна сортировка по издательским сериям. Ну или делать несколько переменных серии и выбирать в настройках библиотеки требуемое, но на мой взгляд это лишний геморрой.
P.S. Кстати что-то я не разобрался с новинками. Ставлю условие bookid > 620800 - ничего не отбирается, ставлю дату поступления >= 01.04.2017 - тоже пусто.
Сообщение отредактировал Rover_M51 - Четверг, 25.05.2017, 10:55 |
|
| |
drserj | Дата: Четверг, 25.05.2017, 11:07 | Сообщение # 1453 |
Генералиссимус
Группа: Администраторы
Сообщений: 4693
Статус: Offline
| Цитата Rover_M51 ( ) Тогда серия будет именно авторской. не всегда... Есть вариант, если нет авторской а есть издательская. по номеру - хоть он есть, хоть его нет - разницы никакой, это абсолютно ничего не значит.
Цитата Rover_M51 ( ) Очень сомневаюсь что кому-то нужна сортировка по издательским сериям. О нет, очень даже многих интересует. Обратим внимание на то, что в инете имеется большое к-во сборок по изданиям. Как они формируются - догадаться не трудно?
Цитата Rover_M51 ( ) Ну или делать несколько переменных серии и выбирать в настройках библиотеки требуемое, но на мой взгляд это лишний геморрой. Дело в том, что приватная коллекция в мультилибе - это просто некоторое приятное дополнение, которое основывается на базах сетевых библиотек. Что-то менять в мультилибе по этому вопросу малореально. Сейчас пишется unilib, который заточен именно под пользовательские библиотеки. Там сама база уже заточена под решение данной проблемы и при парсинге, в зависимости от тэга прописывается тип серии.
Цитата Rover_M51 ( ) Кстати что-то я не разобрался с новинками. если честно, новинки больше относятся к сетевым библиотекам, я не помню реализовывал ли я отбор для приватных, как бы особого смысла оно не имеет... По свободе гляну.
drSerj
|
|
| |
lordkor | Дата: Четверг, 25.05.2017, 21:45 | Сообщение # 1454 |
Лейтенант
Группа: Друзья
Сообщений: 56
Статус: Offline
| Цитата drserj ( ) Но и десятки настроек на одно и то же - счастья не добавят.... А баланс соблюсти тяжело, неизвестно что поменяют завтра. Согласен
Цитата drserj ( ) Поставить AdVor Дык, стоит специально для МультиЛиба. А вот чтобы с фоксом его задружить, пришлось сейчас помучиться. Но таки нашел
Цитата drserj ( ) Тут дело религии... Я лично тяну всё И я об том же - у каждого свой сценарий. И хорошо, когда софт подходит под разные
Цитата drserj ( ) И заменить один запрос кучей мелких Все равно никак не пойму, как оно работает Хотя, если вся процедура вывода - черный ящик, тогда да, самому там ничего не поменять
Цитата drserj ( ) На самом деле они умудряются затыкать дырки в базе Да ну и фиг бы с ним, если старые айди местами не меняют.
Цитата drserj ( ) За последние несколько лет по этому моменту вопросов не возникало Ну, за других я говорить не могу, но лично мне неудобно, когда запускаешь обновление базы - и тебя выкидывает на первую клетку Как-то удобнее продолжать работу оттуда, где остановился, а не искать каждый раз, где ж я был Опять же, мой сценарий: комп работает 24/7, МультиЛиб тоже, открыт список книг автора, серию которого я в данным момент читаю (или перечитываю). Курсор на текущей книге. Заканчиваю книгу, закрываю читалку, выставляю рейтинг (за неимением флажка "прочитано"), выбираю следующую книгу, открываю ее в читалке. Выход из программы или обновление библиотеки - и я вылетаю из списка: надо опять искать автора и текущую книгу. Благо можно посмотреть по списку последних открытых. Неудобно, в общем - в идеале бы хотелось оказаться в той же закладке на той же книге, если она не удалена. Или хотя бы в закладке автора на этой книге, если тяжело восстановить предыдущее состояние.
Цитата drserj ( ) уууууу.... как всё запущено А смысл? Зачем каждый раз делать кучу абсолютно ненужных действий, которые комп сам выполнит гораздо эффективнее?
|
|
| |
1_абрам | Дата: Пятница, 26.05.2017, 08:53 | Сообщение # 1455 |
Генералиссимус
Группа: Друзья
Сообщений: 1207
Статус: Offline
| Цитата lordkor ( ) Поясню свой сценарий – у меня в «новинках» сейчас есть отдельные группы для: - избранных авторов - жанра - поджанра
У меня похожий сценарий Я еще использую группу "Отследить" в этой группе отслеживается книги по названию.Добавлено (26.05.2017, 06:39) ---------------------------------------------
Цитата lordkor ( ) Сейчас для этого сценария мне более менее удобно использовать «новинки». Как это сделать иначе, я пока не нашел. Единственное, чего тут не хватает – выключить показ «старых» «новинок», чтобы просмотреть только самые свежие.
Очень просто - упорядочить таблицу по "bookid" - новые новинки Ж) в начале списка. Сортировка в мультилибе сохраняется. Так что очень удобно. Еще я добавляю понравившиеся новинки в группу "К прочтению" и использую фильтр "Группа is not пусто". Это исключает отобранные новинки из таблицы. Очень удобно.Добавлено (26.05.2017, 06:50) ---------------------------------------------
Цитата drserj ( ) Кстати, сама библиотека без контента имеется тут: http://flisland.net, может как-то задействовать...
Так книжку то в ней (http://flisland.net) открыть не удается. Так что опцию открыть в интернете мне пока реализовать не удалось.Добавлено (26.05.2017, 06:53) ---------------------------------------------
Цитата lordkor ( ) Но все равно MultiLib ближе всего к тому идеальному инструменту. который нужен мне
+1, как я понял, вы как и я пришли в мультилиб из хоумлиба.
|
|
| |
|