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
Configuring position of docstrings?

When I check the docstring of a Python function, it opens at the bottom of the browser window. However, since my screen has the standard shape of being wider than high, this means that when running the Jupyter notebook there's a lot of wasted space at the sides. It would therefore be terrific to have the docstring open at the side of the notebook cells, rather than underneath them. I could then have a docstring open without losing any notebook screen real-estate.

Can this be done?

/r/JupyterNotebooks
https://redd.it/8h6w2w
Modern Django tooling and testing

Hi hackers,
I'm relatively new to Django but not to web development. What are some essential libraries and tools you use for modern Django development? What are some "must haves" in your Pipfile? And how are most folks testing these days?

Currently, I use:

[packages]
django = "*"
"psycopg2" = "*"
gunicorn = "*"
django-heroku = "*"
dj-database-url = "*"
whitenoise = "*"
django-dotenv = "*"

[dev-packages]
green = "*"

I am especially interested in testing, as the Python and/or Django test frameworks, aren't quite as powerful, out of the box, as what I'm used to from other ecosystems.

Bonus points for a "modern" guide to working with Django.


/r/django
https://redd.it/8har0u
Conditional Counting

Let's say we have the following simplistic models:


class Category(models.Model):
name = models.CharField(max_length=264)

def __str__(self):
return self.name

class Meta:
verbose_name_plural = "categories"

class Status(models.Model):
name = models.CharField(max_length=264)

def __str__(self):
return self.name

class Meta:
verbose_name_plural = "status"

class Bet(models.Model):
title = models.CharField(max_length=264)
description = models.CharField(max_length=264)
category = models.ForeignKey(Category, on_delete=models.CASCADE)
price = models.DecimalField(max_digits=10)
status = models.ForeignKey(Status, on_delete=models.CASCADE)


Status choices would be: Sold, Not Sold, Reserved, Withdrawn.

My aim is for each category to get the total amount of products and how many were Sold or Reserved.

This would get the total amount of products per category:

qs = Product.objects.all().values("category__name").annotate(total_products=Count("id"))

Including how many were Sold or Reserved:

qs = Product.objects.all().values("category__name").annotate(total_products=Count("id"), total_available=Count(Case(When(status__name__in=["Sold", "Reserved"], then=True), default=False, output_field=BooleanField())))

I am not sure if it's the correct way, total_available appears to return all the products per category.


/r/django
https://redd.it/8hbvca
[AF] How to prevent brute-force login attacks using flask-login?

Is there a standard way of doing this, or is it up to me to implement the logic?

Thanks

/r/flask
https://redd.it/8h8mja
[D] Overview of Machine Learning for newcomers

/r/MachineLearning
https://redd.it/8hdby5
how to display conditional html in a template shared between several routes ?

hello, so i have two different routes that return the same template,

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

@app.route('/name')
def name:
...
name = #some code
return render_template('default.html',name=name)

a chunk of code of that template is the following

{% if name is not none %}
<p>customer name is : {{ name }}</p>
{% endif %}

it appears that in the route ('/'), the name is evaluated as not none, so it goes through the if statement and the html is displayed (with blank where the name is supposed to be displayed)

i want my html part to be either fully displayed with the name if there is one, or nothing. how can i do ?


/r/flask
https://redd.it/8h765l
typing: How to use class in type hints while defining the class itself?

Here’s an illustration of what I want to do:

class Foo(object):
def fn(self) -> Foo: # <-- error here
return Foo()

When doing this, the compiler complains:

NameError: name 'Foo' is not defined


How do I use `Foo` in a type hint while defining `Foo` itself?

/r/Python
https://redd.it/8hdnzz
Conditional Counting

Let's say we have the following simplistic models:


class Category(models.Model):
name = models.CharField(max_length=264)

def __str__(self):
return self.name

class Meta:
verbose_name_plural = "categories"

class Status(models.Model):
name = models.CharField(max_length=264)

def __str__(self):
return self.name

class Meta:
verbose_name_plural = "status"

class Bet(models.Model):
title = models.CharField(max_length=264)
description = models.CharField(max_length=264)
category = models.ForeignKey(Category, on_delete=models.CASCADE)
price = models.DecimalField(max_digits=10)
status = models.ForeignKey(Status, on_delete=models.CASCADE)


Status choices would be: Sold, Not Sold, Reserved, Withdrawn.

My aim is for each category to get the total amount of products and how many were Sold or Reserved.

This would get the total amount of products per category:

qs = Product.objects.all().values("category__name").annotate(total_products=Count("id"))

Including how many were Sold or Reserved:

qs = Product.objects.all().values("category__name").annotate(total_products=Count("id"), total_available=Count(Case(When(status__name__in=["Sold", "Reserved"], then=True), default=False, output_field=BooleanField())))

So, if you don't include default=True in the annotation it works as intented.

I want to go a little bit further, so the total_available is a percentage of the total products of each category:

qs = Product.objects.all().values("category__name").annotate(total_products=Count("id"), total_available=Cast((Count(Case(When(status__name__in=["Sold", "Reserved"], then=True), default=False, output_field=BooleanField())) / Count("id")) * 100., FloatField()))


This way it really does not work properly, I wish I knew why.


/r/django
https://redd.it/8hbvca
Whats this monitoring package whose name I can't think of?

There's a package that monitors your Django projects performance (in production?) and for a certain subset (i think?) of requests records performance characteristics.

IIRC, it has a page that graphs all the information for you.

Sorry if this is too vague, the fact that I can't remember what this thing is is driving my crazy.

/r/django
https://redd.it/8hh2dl
How to subscript strings in jinja2?

I would like to show only the first 15 characters of "{{ room.text }}", basically the jinja2 version of room.text[:15]

https://imgur.com/a/1jB85Bi

/r/djangolearning
https://redd.it/8he5kt
[AF] How to improve current application?

Hi, so for I've been working on a website for about a month now and am now starting to get a little tired of my site's overall clunkiness.

One step forward would be to make 2 separate micro-applications. One for the user and one for the post, which will also have comments and topics, to make things a little less complicated to deal with.

How else would I be able to improve my flask site [provided here](https://github.com/ModoUnreal/nuncio)?

Also if you want to contribute then definitely do so, the more the merrier.

/r/flask
https://redd.it/8hi0sd
search by "name" using form and SQLite 3

Hi guys

I'm playing with flask and i'm trying to display some informations using a form and SQLite3. I . have this code :

Run.py

@app.route('/search', methods=['GET','POST'])
def search():
conn = sql.connect('database.db')
cursor = conn.cursor()
if request.method == 'GET':
cursor.execute('select * from components where name LIKE ?',[request.form['name']])
results = cursor.fetchall()
return render_template("search.html", results = results)

search.html \(index.html is the same code\)

<form action="{{ url_for('search') }}" method=POST class=form-horizontal>
<div class="form-group row">
<label for="inputPassword" class="col-sm-2 col-form-label">Component</label>
<div class="col-sm-10">
<input type="text" class="form-control" id="inputname" name="name" placeholder="name">
</div>
</div>
<div class="form-group">
<div class="col-sm-offset-2 col-sm-10">
<button type="submit" class="btn btn-success">Search</button>
</div>
</div>
</form>

But i still have this error each time

# UnboundLocalError

UnboundLocalError: local variable 'results' referenced before assignment

can someone tell me what i am doing wrong ? \>\_O

/r/flask
https://redd.it/8hf41x
Lot of Django posts I see on Reddit

Hey I just started learning Django and Python. I need some help with how to do this.

‘Posts some complicated shit that makes me think why the hell am I not on this level when I just started learning Django too?’

/r/django
https://redd.it/8hgbol
What workflows are people automating?

I do financial + campaign analytics at my company and lately I’ve been at work building a full campaign forecasting + expensing + ROI calculating pipeline with several other teams. It’s exciting work but it’s mostly just procedural programming with pandas. I’m curious what others are up to. What business processes are you automating, improving or making more efficient?

/r/Python
https://redd.it/8hfx9w
The time before a page is loaded in the browser is very slow on list views with around 400 objects, what can I do to improve that and there what tools do you suggest to profile where the bottlenecks lie?

I can paginate generic list views, and that does improve the time for the page to be served.

But I have some other list views which use FilterSet from django-filter, and those can't be paginated(well, out of the box, at least)
They can take around 16 secs to fully send the page to the browser, and that's just for around 400 objects. I know the problem is not database related, because according to django-debug-toolbar the SQL quiries finish around 150 ms.

Are these serving times normal?

/r/djangolearning
https://redd.it/8hjgp4