Skip to content

raulodev/pagecraft

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

pagecraft

Powerful package and easy to use that simplifies the creation of pagination in your apps

Downloads PyPI version Repo Size PyPI - License

Installing

pip install pagecraft

Tutorial

from pagecraft import PageCraft

lista_de_objetos = [
    "Automatización Eficiente con Python",
    "Explorando las Profundidades de Python",
    "Desarrollo Web Moderno con Python y Flask",
    "Introducción a la Ciencia de Datos con Python",
    "Creando Aplicaciones de Escritorio con Python y PyQt",
    "Aventuras en el Aprendizaje Automático con Python",
    "Python y la Internet de las Cosas (IoT)",
]


pgcraft = PageCraft(lista_de_objetos)

# Get first page
page = pgcraft.page(1)

PageCraftAlchemy Tutorial

from sqlalchemy import create_engine, Column, Integer, String
from sqlalchemy.orm import sessionmaker, declarative_base

from pagecraft.alchemy import PageCraftAlchemy

Base = declarative_base()

class Frases(Base):
    __tablename__ = "frases"
    id = Column(Integer, primary_key=True)
    texto = Column(String)

    def __str__(self):
        return self.texto

engine = create_engine("sqlite:///:memory:")

Base.metadata.create_all(engine)

Session = sessionmaker(bind=engine)
session = Session()

for i in range(1, 21):
    frase = Frases(texto=f"Frase {i}")
    session.add(frase)

session.commit()

query = session.query(Frases)

alchemycraft = PageCraftAlchemy(query)

# Get first page
page = alchemycraft.page(1)

Accessing data:

# Get data from page
page.data

# True or False if next page exists
page.has_next_page

# Get the next page number
page.next_page

# True or False if prev page exists
page.has_prev_page

# Get the prev page number
page.prev_page

# Get the current page number
page.number

Extend the data returned

# set integer number as second argument

pgcraft = PageCraft(lista_de_objetos,20)

alchemycraft = PageCraftAlchemy(query , 20)

Release Notes (0.0.6)

  • add PageCraftAlchemy : create easy pagination for Sqlalchemy ORM
  • now there are 10 items returned by default

About

Powerful package and easy to use that simplifies the creation of pagination in your apps

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors

Languages