ホームページ バックエンド開発 PHPチュートリアル Pythonを使ってCMSシステムの広告管理機能を実装する方法

Pythonを使ってCMSシステムの広告管理機能を実装する方法

Aug 05, 2023 pm 01:15 PM
python cms 広告管理

Python を使用して CMS システムの広告管理機能を実装する方法

インターネットの急速な発展に伴い、Web サイトはあらゆる分野で宣伝と宣伝のための重要なチャネルの 1 つになりました。オンライン プロモーションの一般的な方法として、広告は Web サイトの収益性とユーザー エクスペリエンスにおいて重要な役割を果たします。 Web サイト管理者が広告を管理および表示しやすくするために、多くの Web サイトでは CMS (コンテンツ管理システム) システムを使用して広告管理機能を実装しています。この記事では、Python プログラミング言語を使用して、簡単な CMS システムの広告管理機能を実装する方法を紹介します。

1. CMS システムの概要

CMS システムは、コンテンツを管理および公開するためのソフトウェアであり、Web サイトのコンテンツを作成、編集、公開することができます。 Web マスターが Web サイトのコンテンツ、レイアウト、機能を簡単に管理できるユーザーフレンドリーなインターフェイスを提供します。 CMS システムを通じて、広告管理者は広告を簡単に追加、編集、削除し、広告の配置、頻度、スタイルを制御できます。

2. 開発環境の準備

コードを記述する前に、適切な開発環境を準備する必要があります。一般的に使用される Python 開発ツールとライブラリは次のとおりです。

  1. Python インタープリター: Python 3.x バージョンが推奨されます。
  2. Flask フレームワーク: Web アプリケーションを迅速かつ簡単に構築するための軽量の Python Web 開発フレームワーク。
  3. SQLAlchemy: データベースを操作するための人気のある Python ORM (オブジェクト リレーショナル マッピング) ライブラリ。
  4. SQLite データベース: 小規模なアプリケーションに適した軽量のリレーショナル データベース。

ニーズや個人の好みに基づいて、他の適切なツールやライブラリを選択できます。次にFlaskとSQLAlchemyを使って広告管理機能を実装していきます。

3. Flask アプリケーションの作成

まず、Flask アプリケーションを作成する必要があります。以下の手順に従ってください:

  1. Flask ライブラリをインストールします:
pip install flask
ログイン後にコピー
  1. app.py という名前の Python スクリプトを作成し、必要なモジュールをインポートします:
from flask import Flask, render_template
from flask_sqlalchemy import SQLAlchemy

app = Flask(__name__)
app.config['SQLALCHEMY_DATABASE_URI'] = 'sqlite:///ads.db'
db = SQLAlchemy(app)
ログイン後にコピー

上記のコードでは、Flask ライブラリと SQLAlchemy ライブラリをインポートし、Flask アプリケーションを作成しました。 app.config['SQLALCHEMY_DATABASE_URI'] はデータベースの接続文字列を設定するために使用されます。ここでは SQLite データベースを使用します。

4. 広告モデルを作成する

次に、広告情報を表す広告モデルを作成する必要があります。 Python では、SQLAlchemy.Model を継承するクラスを定義することでデータベース テーブルを表すことができます。

class Ad(db.Model):
    id = db.Column(db.Integer, primary_key=True)
    title = db.Column(db.String(128))
    content = db.Column(db.String(512))
    start_date = db.Column(db.Date)
    end_date = db.Column(db.Date)
    position = db.Column(db.Integer)
    status = db.Column(db.Integer)
ログイン後にコピー

上記のコードでは、タイトル、コンテンツ、開始日、終了日、場所、ステータスなどの広告のさまざまな属性を含む Ad クラスを定義します。 ID は主キーとして指定され、各広告の一意性が保証されます。

5. データベース テーブルを作成する

広告モデルを作成した後、db.create_all() メソッドを使用して、対応するデータベース テーブルを作成する必要があります。

db.create_all()
ログイン後にコピー

6. 広告管理関数の作成

次に、広告管理関数の作成を開始できます。広告の追加、削除、変更、確認の機能を実装する必要があります。よく使用される関数とサンプル コードをいくつか示します。

  1. Add Ads
@app.route('/ads/add', methods=['GET', 'POST'])
def add_ad():
    if request.method == 'POST':
        ad = Ad()
        ad.title = request.form['title']
        ad.content = request.form['content']
        ad.start_date = request.form['start_date']
        ad.end_date = request.form['end_date']
        ad.position = request.form['position']
        ad.status = request.form['status']
        db.session.add(ad)
        db.session.commit()
        return redirect(url_for('list_ads'))
    else:
        return render_template('add_ad.html')
ログイン後にコピー

上記のコードでは、「/ads/add」ルートと POST を通じて処理します。メソッド 広告を追加するリクエスト。 POST メソッドの場合、広告のさまざまなプロパティがフォームから取得され、データベースに追加されます。

  1. 広告の編集
@app.route('/ads/edit/<int:ad_id>', methods=['GET', 'POST'])
def edit_ad(ad_id):
    ad = Ad.query.get(ad_id)
    if request.method == 'POST':
        ad.title = request.form['title']
        ad.content = request.form['content']
        ad.start_date = request.form['start_date']
        ad.end_date = request.form['end_date']
        ad.position = request.form['position']
        ad.status = request.form['status']
        db.session.commit()
        return redirect(url_for('list_ads'))
    else:
        return render_template('edit_ad.html', ad=ad)
ログイン後にコピー

上記のコードでは、「/ads/edit/」ルートと GET/POST メソッドを使用して広告の編集を処理します。 。 聞く。 GET メソッドの場合、アドバタイズメントはデータベースからクエリされ、表示のためにテンプレートに渡されます。 POST メソッドの場合、広告のさまざまなプロパティが更新され、データベースに保存されます。

  1. 広告の削除
@app.route('/ads/delete/<int:ad_id>', methods=['POST'])
def delete_ad(ad_id):
    ad = Ad.query.get(ad_id)
    db.session.delete(ad)
    db.session.commit()
    return redirect(url_for('list_ads'))
ログイン後にコピー

上記のコードでは、「/ads/delete/」ルートと POST メソッドを通じて広告を削除するリクエストを処理します。 。 ad_id を介してデータベースから広告をクエリし、削除します。

  1. 広告リストの取得
@app.route('/ads')
def list_ads():
    ads = Ad.query.all()
    return render_template('list_ads.html', ads=ads)
ログイン後にコピー

上記のコードでは、「/ads」ルートを通じて広告リストを取得するリクエストを処理します。すべての広告は、Ad.query.all() メソッドを通じてデータベースからクエリされ、表示用のテンプレートに渡されます。

7. HTML テンプレートの作成

最後に、広告管理機能をレンダリングして表示するための HTML テンプレートを作成する必要があります。よく使用されるテンプレートとサンプル コードをいくつか示します:

  1. add_ad.html
<form method="post" action="/ads/add">
    <label>标题</label>
    <input type="text" name="title">
    <!-- 其他属性的输入框 -->
    <button type="submit">保存</button>
</form>
ログイン後にコピー
  1. edit_ad.html
<form method="post" action="/ads/edit/{{ad.id}}">
    <label>标题</label>
    <input type="text" name="title" value="{{ad.title}}">
    <!-- 其他属性的输入框 -->
    <button type="submit">保存</button>
</form>
ログイン後にコピー
  1. list_ads.html
<table>
    <tr>
        <th>标题</th>
        <!-- 其他属性的表头 -->
        <th>操作</th>
    </tr>
    {% for ad in ads %}
    <tr>
        <td>{{ad.title}}</td>
        <!-- 其他属性的表格 -->
        <td>
            <a href="/ads/edit/{{ad.id}}">编辑</a>
            <form method="post" action="/ads/delete/{{ad.id}}" style="display:inline;">
                <button type="submit">删除</button>
            </form>
        </td>
    </tr>
    {% endfor %}
</table>
ログイン後にコピー

上記のコードでは、Flask が提供するテンプレート エンジンを使用しています。これにより、レンダリングと表示のために動的データを HTML テンプレートに簡単に渡すことができます。

8. プログラムの実行

最後に、ターミナルでスクリプトを実行して Flask アプリケーションを開始する必要があります。

python app.py
ログイン後にコピー

ブラウザに http://localhost:5000 と入力して広告管理機能ページにアクセスします。

概要:

この記事では、Python プログラミング言語を使用して、シンプルな CMS システムの広告管理機能を実装する方法を紹介します。 Flask や SQLAlchemy などのツールやライブラリを使用すると、広告の追加、編集、削除、表示などの機能を実装する動的な Web アプリケーションを簡単に作成できます。この記事が皆様のお役に立ち、更なる学習と探索への関心を高めることを願っています。

以上がPythonを使ってCMSシステムの広告管理機能を実装する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

Video Face Swap

Video Face Swap

完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

PHPとPythonの選択:ガイド PHPとPythonの選択:ガイド Apr 18, 2025 am 12:24 AM

PHPはWeb開発と迅速なプロトタイピングに適しており、Pythonはデータサイエンスと機械学習に適しています。 1.PHPは、単純な構文と迅速な開発に適した動的なWeb開発に使用されます。 2。Pythonには簡潔な構文があり、複数のフィールドに適しており、強力なライブラリエコシステムがあります。

PHPおよびPython:さまざまなパラダイムが説明されています PHPおよびPython:さまざまなパラダイムが説明されています Apr 18, 2025 am 12:26 AM

PHPは主に手順プログラミングですが、オブジェクト指向プログラミング(OOP)もサポートしています。 Pythonは、OOP、機能、手続き上のプログラミングなど、さまざまなパラダイムをサポートしています。 PHPはWeb開発に適しており、Pythonはデータ分析や機械学習などのさまざまなアプリケーションに適しています。

Windows 8でコードを実行できます Windows 8でコードを実行できます Apr 15, 2025 pm 07:24 PM

VSコードはWindows 8で実行できますが、エクスペリエンスは大きくない場合があります。まず、システムが最新のパッチに更新されていることを確認してから、システムアーキテクチャに一致するVSコードインストールパッケージをダウンロードして、プロンプトとしてインストールします。インストール後、一部の拡張機能はWindows 8と互換性があり、代替拡張機能を探すか、仮想マシンで新しいWindowsシステムを使用する必要があることに注意してください。必要な拡張機能をインストールして、適切に動作するかどうかを確認します。 Windows 8ではVSコードは実行可能ですが、開発エクスペリエンスとセキュリティを向上させるために、新しいWindowsシステムにアップグレードすることをお勧めします。

VSCODE拡張機能は悪意がありますか? VSCODE拡張機能は悪意がありますか? Apr 15, 2025 pm 07:57 PM

VSコード拡張機能は、悪意のあるコードの隠れ、脆弱性の活用、合法的な拡張機能としての自慰行為など、悪意のあるリスクを引き起こします。悪意のある拡張機能を識別する方法には、パブリッシャーのチェック、コメントの読み取り、コードのチェック、およびインストールに注意してください。セキュリティ対策には、セキュリティ認識、良好な習慣、定期的な更新、ウイルス対策ソフトウェアも含まれます。

Visual StudioコードはPythonで使用できますか Visual StudioコードはPythonで使用できますか Apr 15, 2025 pm 08:18 PM

VSコードはPythonの書き込みに使用でき、Pythonアプリケーションを開発するための理想的なツールになる多くの機能を提供できます。ユーザーは以下を可能にします。Python拡張機能をインストールして、コードの完了、構文の強調表示、デバッグなどの関数を取得できます。デバッガーを使用して、コードを段階的に追跡し、エラーを見つけて修正します。バージョンコントロールのためにGitを統合します。コードフォーマットツールを使用して、コードの一貫性を維持します。糸くずツールを使用して、事前に潜在的な問題を発見します。

ターミナルVSCODEでプログラムを実行する方法 ターミナルVSCODEでプログラムを実行する方法 Apr 15, 2025 pm 06:42 PM

VSコードでは、次の手順を通じて端末でプログラムを実行できます。コードを準備し、統合端子を開き、コードディレクトリが端末作業ディレクトリと一致していることを確認します。プログラミング言語(pythonのpython your_file_name.pyなど)に従って実行コマンドを選択して、それが正常に実行されるかどうかを確認し、エラーを解決します。デバッガーを使用して、デバッグ効率を向上させます。

Python vs. JavaScript:学習曲線と使いやすさ Python vs. JavaScript:学習曲線と使いやすさ Apr 16, 2025 am 12:12 AM

Pythonは、スムーズな学習曲線と簡潔な構文を備えた初心者により適しています。 JavaScriptは、急な学習曲線と柔軟な構文を備えたフロントエンド開発に適しています。 1。Python構文は直感的で、データサイエンスやバックエンド開発に適しています。 2。JavaScriptは柔軟で、フロントエンドおよびサーバー側のプログラミングで広く使用されています。

vscodeはMacに使用できますか vscodeはMacに使用できますか Apr 15, 2025 pm 07:36 PM

VSコードはMacで利用できます。強力な拡張機能、GIT統合、ターミナル、デバッガーがあり、豊富なセットアップオプションも提供しています。ただし、特に大規模なプロジェクトまたは非常に専門的な開発の場合、コードと機能的な制限がある場合があります。

See all articles