Python Daily
2.57K subscribers
1.48K photos
53 videos
2 files
38.9K links
Daily Python News
Question, Tips and Tricks, Best Practices on Python Programming Language
Find more reddit channels over at @r_channels
Download Telegram
[Flask-SQLAlchemy] Querying association table in flask-sqlalchemy?

Let's say I have two models **Posts** and **Tags** and an association table **post_tags** that connects these models in a many-to-many relationship (one post can have one or many tags and each tag can have one or more posts attached to it):

post_tags = db.Table(
'post_tags',
db.Column('post_id', db.Integer, db.ForeignKey('posts.id'), primary_key=True),
db.Column('tag_id', db.Integer, db.ForeignKey('tags.id'), primary_key=True),
)

class Post(db.Model):
__tablename__ = 'posts'
id = db.Column(db.Integer, primary_key=True)
text = db.Column(db.Text, nullable=False)
created_at = db.Column(db.Integer, nullable=False)

class Tag(db.Model):
__tablename__ = 'tags'
id = db.Column(db.Integer, primary_key=True)
name = db.Column(db.String, unique=True, nullable=False)


I want to obtain the most frequently mentioned tags from the **post_tags** table. SQLite query for this roughly looks like:

SELECT tag_id, count(tag_id) FROM post_tags GROUP BY tag_id ORDER BY count(tag_id) DESC;

How can I accomplish this in SQLAlchemy? I am using Flask-SQLAlchemy extension and SQLite as a DB driver.

Edit: formatting and grammar

/r/flask
https://redd.it/8idv32
Can I host Django website where i currently host my Wordpress website?

I have a hosting service for 1 year but I use it to host Wordpress.Can i host my Django website on the server instead of the Wordpress?

What are the requirements to host Django?

/r/django
https://redd.it/8itn2j
[AF] Pagination not working, has_next and has_prev always gives None

Hi, so as the title suggests I have a problem regarding pagination. Here is the code I have tried to use (taken from [Miguel Grinberg's tutorial](https://blog.miguelgrinberg.com/post/the-flask-mega-tutorial-part-ix-pagination)).

def index():
"""View function for the index site, basically the main site.
Sorts posts by hotness"""
page = request.args.get('page', 1, type=int)
posts = Post.query.order_by(Post.hotness.desc()).paginate(
page, app.config['POSTS_PER_PAGE'], False)
next_url = url_for('index', page=posts.next_num) \
if posts.has_next else None
prev_url = url_for('index', page=posts.prev_num) \
if posts.has_prev else None
return render_template('index.html', title='Dopenet: You can do anything', posts=posts.items, next_url=next_url, prev_url=prev_url)

The index.html file is this:

{% extends "base.html" %}

{% block content %}
{% for post in posts if posts %}
{% include '_post.html' %}
{% endfor %}

{% if prev_url %}
<a href="{{ prev_url }}">Newer posts</a>
{% endif %}
{% if next_url %}
<a href="{{ next_url }}">Older posts</a>
{% endif %}

{% endblock %}

So I am guessing that both has_next and has_prev are giving `None` as a response, so hence no url for both prev and next.

What am I doing wrong and how can I fix this?

The rest of the code can be found here, if more context is needed:

https://www.github.com/ModoUnreal/Nuncio

/r/flask
https://redd.it/8ixivl
How to redirect a request on api point to a docker container?

I’m want requests sent on a route to be redirected to that of a container (exposed via ports)

/r/flask
https://redd.it/8dxkpc
A month ago /u/AlSweigart asked for help reviewing his book. I delivered and so did he.

/r/Python
https://redd.it/8ixbcm
2D CAD/vectors drawing library

Hey, I'm looking to draw some patterns in Python based on a set of inputs. Need to do things like lines, tangents, and arcs. Does anyone know of library I could use to draw on a canvas?

/r/Python
https://redd.it/8j0vr2
help to create a custom user form

Hi I would like to know how I can customize my user model, I haves this model:

from django.db import models

from django.contrib.auth.models import AbstractUser, UserManager

class CustomUserManager\(UserManager\):

pass

class CustomUser\(AbstractUser\):

objects = CustomUserManager\(\)

and I have this form

from django import forms

from django.contrib.auth.forms import UserCreationForm, UserChangeForm

from .models import CustomUser

class CustomUserCreationForm\(UserCreationForm\):

class Meta\(UserCreationForm.Meta\):

model = CustomUser

fields = \('username', 'email'\)

class CustomUserChangeForm\(UserChangeForm\):

class Meta:

model = CustomUser

fields = UserChangeForm.Meta.fields

I need to know how I can add more fields to the model and how implement it in the form for example I want to add ID, adrees and Bday fields

/r/djangolearning
https://redd.it/8j1htl
[AF] Updated website is causing problem for old users, possible cookie issues

To remove "server/main.cgi/" from example.com/server/main.cgi/mypage I changed

@app.route('/mypage/')

to

@app.route('/mypage')

But now, when my old users click the button to open /mypage, the url "example.com/server/main.cgi/mypage/" is requested, which is no longer used. Altough the button url says example.com/mypage.

I am not sure if this is caused by old cookies or cache, but there are no issues when i open the website in a private window.

Also, I am sure there must be some better way to remove that part of the url, because now, /mypage/ wont work.

My .htaccess file looks like this.

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ /home/www/server/main.cgi/$1 [L]

main.cgi

#!/usr/bin/python3
import sys
sys.path.insert(0, '/home/.local/lib/python3.4/site-packages')

from wsgiref.handlers import CGIHandler
from myapp import app

CGIHandler().run(app)

myapp.py

from flask import Flask, render_template

app = Flask(__name__, static_folder="../static",
template_folder="../templates")

@app.route('/mypage')
def mypage():
return render_template('mypage.html')

if __name__ == '__main__':
app.run()

I appreciate any help I can get on this issue.

Edit: All my imports are listed with for example "/server/main.cgi/static/js/bootstrap.bundle.js". Is it possible to change it to "/static/js/bootstrap.bundle.js"?

/r/flask
https://redd.it/8j349j
Should I use cron or celery for a task to be performed at the exact same time twice a month?

I need to perform a specific task at exactly 12:00 AM on the 1st and 16th day of the month. The task is pretty simple; it is setting a model IntegerField to 0.

I know the 2 major apps for this are cron and celery. I'm not experienced at all with either of them. Which one of them is optimal for my situation?

/r/django
https://redd.it/8j903y