indenger20, спасибо! работает.---------- Добавлено 04.05.2016 в 23:40 ----------И тогда, может уже подскажете, как полученное значение передать в форму.
Есть инпут с name="file"
вместо алерта выше делаю так:
var path = $(this).html(); $("input[name='file']").val(path);
Не работает.
Связь создается здесь -
newpost = BlogPost(.... categories_id=5 ... )
Достаточно передать номер категории и Джанго сам создаст связь с нужной таблицей согласно модели
Все верно, уже дописал обработчик ошибок
И тут соглашусь. Автора и категорию я могу вообще исключить, потому что они не совпадаю в новой таблице. Мне важно создать json - файл с нужными данными, и уже потом при импорте я просто указываю, в какую категорию писать. Автор в данном случае вообще один только
Спасибо за комментарии
i-work, А мне в таком варианте не нужно по разным таблицам раскидывать. Не нужно для импорта лезть в консоль, могу в админке теперь загрузить json и тут же его импортировать в базу без лишних телодвижений))) все связи сами создадутся
Впрочем на вкус и цвет... Я нашел такое решение, оно меня более чем устраивает.
webjey, Stek, Спасибо за советы, помогло вникнуть в суть.
Но все же решил пойти по пути использования Джанго для этого. Получается универсальный код.
Вот пример, просто чтоб сравнить как все выглядит по сравнению с мусклей или пхп)))
def get_context_data(self, **kwargs): context = super(ImportView, self).get_context_data(**kwargs) context['form'] = ImportForm data = requests.get('http://rentalcar.loc/media/data.json').json() url = "http://rentalcar.loc/media/test.txt" for item in data: newpost = BlogPost(language='ru', title= item['post_title'], slug=item['post_name'], created_at=item['post_date'], content=item['post_content'], announce=item['post_content'][:250], keywords='новости', status='publish', categories_id=8, author_id=1 ) try: newpost.save() except: pass return context
Stek, Во-первых - не по одной таблице, тут главная сложность. В Вордпрессе данные по категориям храняться в 2-х таблицах, сам пост - в третьей, а тут ещеподумал, что неплохо бы выбрать данные из postmeta - там ссылки на картинки и дополнительные данные. Я собрал их в одну таблицу например, примерно таким запросом:
SELECT `term_taxonomy_id`, `object_id`, `slug`,`post_title`,`post_date`, `post_content`, `post_name`, `meta_key`, `meta_value` FROM `wp_rus_term_relationships` INNER JOIN `wp_rus_terms` ON `wp_rus_term_relationships`.`term_taxonomy_id` = `wp_rus_terms`.`term_id` INNER JOIN `wp_rus_posts` ON `wp_rus_posts`.`ID`= `wp_rus_term_relationships`.`object_id` INNER JOIN `wp_rus_postmeta` ON `wp_rus_term_relationships`.`object_id` = `wp_rus_postmeta`.`post_id` AND `wp_rus_postmeta`.`meta_key` = 'thumb' WHERE `wp_rus_term_relationships`.`term_taxonomy_id`= 3
Получилась одна таблица. Теперь ее надо раскидать в две, одна с с постами, во второй категории, связана через поле foreignkey в первой таблице.Не знаю пока как нужный запрос составить. Ну и если делать через апи джанги - тогда гарантированно все данные будут в правильном виде и с ними не будет проблем по редактированию в дальнейшем.
Но если сможете подсказать правильные запросы для postgres - буду благодарен---------- Добавлено 01.05.2016 в 21:40 ----------
В том и дело что нет - джанга все сама сделает. С разбором хмл и чтением из файла я разобрался, там все изумительно организовано. но , я думаю, вы и сами знаете.
Просто гениальный совет, спасибо... А я все думаю - как???
SQL знания зачаточные совсем. Но за утро разобрался и смог собрать нужные мне данные из трех таблиц в одну, выкинув мусор. Теперь думаю как кошернее дальше.
Есть идея сконвертить данные в ХМЛ или Json и дальше обрабатывать их посредством Джанги. Как я понимаю Json - это уже готовый словарь, который бери о обрабатывай в Питоне?
Нет ответа, потому что:
1. Сайт с ТИЦ 10 и около 1000 страниц в индексе, за 10-15 ссылок влетел под самую жесткую версию АГС, пришлось переделывать полностью и письма писать, чтоб амнистировали
2. ТИЦ60 5000 стр в поиске, каталог Яндекса - за 50 ссылок аннулировали ТИЦ, пришлось убирать ссылки, через 20 дней фильтр автоматом снялся
3. ТИЦ 20, 4500 стр. размещено более 200 ссылок - никаких фильтров. В сентябре было влетел под фильтр, через месяц сам вышел,я ничего не делал
Ну не знаю - 24-го написал письмос просьбой проверить сайт на АГС. В этот же день прислали обещание все посмотреть. 25-го прислали ответ, что с сайтов все ок , ждите пару апов до восстановления позиций. А сегодня заметил что АГС уже снят.
Так что жаловаться не могу на ТП Яндекса. Быстро и адекватно ответили.
После ГАС сайт полностью переделывался, менялся контент, движок и тематика. Переезжал на новый IP. Но убрали АГС только после письма Платонам
Идем смотрим логи доступа и ошибок для вебсервера, пхп и базы, находим что тормозит, исправляем...
По вашей информации можно долго гадать...
смотрим в top, какие процессы висят. Вспоминаем, какие обновления накатывались...
10 строк хтмля, стока же цсс, 5 строк на js - задержка появления, желательно куки, чтоб не мозолила глаза если отправлено
Ну и обработчик формы + отправка почты -тоже пара строк.
Вот только вчера себе на сайт сделал, правда на Джанге, но принцип одинаковый