chore: small improvements
This commit is contained in:
@@ -1,4 +1,4 @@
|
|||||||
import typing
|
from typing import ClassVar
|
||||||
from uuid import UUID
|
from uuid import UUID
|
||||||
|
|
||||||
from ninja import ModelSchema
|
from ninja import ModelSchema
|
||||||
@@ -12,10 +12,10 @@ class Advertiser(ModelSchema):
|
|||||||
|
|
||||||
class Meta:
|
class Meta:
|
||||||
model = AdvertiserModel
|
model = AdvertiserModel
|
||||||
exclude: typing.ClassVar[tuple[str]] = (AdvertiserModel.id.field.name,)
|
exclude: ClassVar[tuple[str]] = (AdvertiserModel.id.field.name,)
|
||||||
|
|
||||||
|
|
||||||
class Mlscore(ModelSchema):
|
class Mlscore(ModelSchema):
|
||||||
class Meta:
|
class Meta:
|
||||||
model = MlscoreModel
|
model = MlscoreModel
|
||||||
exclude: typing.ClassVar[tuple[str]] = (MlscoreModel.id.field.name,)
|
exclude: ClassVar[tuple[str]] = (MlscoreModel.id.field.name,)
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
import typing
|
from typing import ClassVar
|
||||||
from typing import Any
|
from typing import Any
|
||||||
from uuid import UUID
|
from uuid import UUID
|
||||||
|
|
||||||
@@ -12,7 +12,7 @@ from apps.campaign.models import Campaign
|
|||||||
class CampaignTargeting(ModelSchema):
|
class CampaignTargeting(ModelSchema):
|
||||||
class Meta:
|
class Meta:
|
||||||
model = Campaign
|
model = Campaign
|
||||||
fields: typing.ClassVar[tuple[str]] = (
|
fields: ClassVar[tuple[str]] = (
|
||||||
Campaign.gender.field.name,
|
Campaign.gender.field.name,
|
||||||
Campaign.age_from.field.name,
|
Campaign.age_from.field.name,
|
||||||
Campaign.age_to.field.name,
|
Campaign.age_to.field.name,
|
||||||
@@ -28,7 +28,7 @@ class CampaignOut(ModelSchema):
|
|||||||
|
|
||||||
class Meta:
|
class Meta:
|
||||||
model = Campaign
|
model = Campaign
|
||||||
fields: typing.ClassVar[tuple[str]] = (
|
fields: ClassVar[tuple[str]] = (
|
||||||
Campaign.ad_title.field.name,
|
Campaign.ad_title.field.name,
|
||||||
Campaign.ad_text.field.name,
|
Campaign.ad_text.field.name,
|
||||||
Campaign.ad_image.field.name,
|
Campaign.ad_image.field.name,
|
||||||
@@ -46,7 +46,7 @@ class CampaignCreateIn(ModelSchema):
|
|||||||
|
|
||||||
class Meta:
|
class Meta:
|
||||||
model = Campaign
|
model = Campaign
|
||||||
fields: typing.ClassVar[tuple[str]] = (
|
fields: ClassVar[tuple[str]] = (
|
||||||
Campaign.ad_title.field.name,
|
Campaign.ad_title.field.name,
|
||||||
Campaign.ad_text.field.name,
|
Campaign.ad_text.field.name,
|
||||||
Campaign.impressions_limit.field.name,
|
Campaign.impressions_limit.field.name,
|
||||||
@@ -59,7 +59,7 @@ class CampaignCreateIn(ModelSchema):
|
|||||||
|
|
||||||
@field_validator("targeting", mode="before")
|
@field_validator("targeting", mode="before")
|
||||||
@classmethod
|
@classmethod
|
||||||
def validate_target(cls, value: Any) -> Any:
|
def validate_targeting(cls, value: Any) -> Any:
|
||||||
if (
|
if (
|
||||||
not isinstance(value, dict)
|
not isinstance(value, dict)
|
||||||
and not isinstance(
|
and not isinstance(
|
||||||
@@ -78,7 +78,7 @@ class CampaignUpdateIn(ModelSchema):
|
|||||||
|
|
||||||
class Meta:
|
class Meta:
|
||||||
model = Campaign
|
model = Campaign
|
||||||
fields: typing.ClassVar[tuple[str]] = (
|
fields: ClassVar[tuple[str]] = (
|
||||||
Campaign.impressions_limit.field.name,
|
Campaign.impressions_limit.field.name,
|
||||||
Campaign.clicks_limit.field.name,
|
Campaign.clicks_limit.field.name,
|
||||||
Campaign.ad_title.field.name,
|
Campaign.ad_title.field.name,
|
||||||
@@ -91,7 +91,7 @@ class CampaignUpdateIn(ModelSchema):
|
|||||||
|
|
||||||
@field_validator("targeting", mode="before")
|
@field_validator("targeting", mode="before")
|
||||||
@classmethod
|
@classmethod
|
||||||
def validate_target(cls, value: Any) -> Any:
|
def validate_targeting(cls, value: Any) -> Any:
|
||||||
if (
|
if (
|
||||||
not isinstance(value, dict)
|
not isinstance(value, dict)
|
||||||
and not isinstance(
|
and not isinstance(
|
||||||
|
|||||||
@@ -150,7 +150,7 @@ def delete_campaign(
|
|||||||
|
|
||||||
|
|
||||||
@router.post(
|
@router.post(
|
||||||
"/{advertiser_id}/campaigns/{campaign_id}/ad_image/upload",
|
"/{advertiser_id}/campaigns/{campaign_id}/ad_image",
|
||||||
response={
|
response={
|
||||||
status.OK: schemas.CampaignOut,
|
status.OK: schemas.CampaignOut,
|
||||||
status.BAD_REQUEST: global_schemas.BadRequestError,
|
status.BAD_REQUEST: global_schemas.BadRequestError,
|
||||||
@@ -187,7 +187,7 @@ def upload_ad_image(
|
|||||||
|
|
||||||
|
|
||||||
@router.delete(
|
@router.delete(
|
||||||
"/{advertiser_id}/campaigns/{campaign_id}/ad_image/delete",
|
"/{advertiser_id}/campaigns/{campaign_id}/ad_image",
|
||||||
response={
|
response={
|
||||||
status.NO_CONTENT: None,
|
status.NO_CONTENT: None,
|
||||||
status.BAD_REQUEST: global_schemas.BadRequestError,
|
status.BAD_REQUEST: global_schemas.BadRequestError,
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
import typing
|
from typing import ClassVar
|
||||||
from uuid import UUID
|
from uuid import UUID
|
||||||
|
|
||||||
from ninja import ModelSchema
|
from ninja import ModelSchema
|
||||||
@@ -11,4 +11,4 @@ class Client(ModelSchema):
|
|||||||
|
|
||||||
class Meta:
|
class Meta:
|
||||||
model = ClientModel
|
model = ClientModel
|
||||||
exclude: typing.ClassVar[tuple[str]] = (ClientModel.id.field.name,)
|
exclude: ClassVar[tuple[str]] = (ClientModel.id.field.name,)
|
||||||
|
|||||||
@@ -1,4 +1,5 @@
|
|||||||
import typing
|
from typing import ClassVar
|
||||||
|
from uuid import UUID
|
||||||
|
|
||||||
from ninja import ModelSchema, Schema
|
from ninja import ModelSchema, Schema
|
||||||
|
|
||||||
@@ -6,12 +7,11 @@ from apps.campaign.models import CampaignReport
|
|||||||
|
|
||||||
|
|
||||||
class SubmitReportIn(ModelSchema):
|
class SubmitReportIn(ModelSchema):
|
||||||
|
client_id: UUID
|
||||||
|
|
||||||
class Meta:
|
class Meta:
|
||||||
model = CampaignReport
|
model = CampaignReport
|
||||||
fields: typing.ClassVar[tuple[str]] = (
|
fields: ClassVar[tuple[str]] = (CampaignReport.message.field.name,)
|
||||||
CampaignReport.client.field.name,
|
|
||||||
CampaignReport.message.field.name,
|
|
||||||
)
|
|
||||||
|
|
||||||
|
|
||||||
class SubmitReportOut(Schema):
|
class SubmitReportOut(Schema):
|
||||||
|
|||||||
@@ -29,7 +29,7 @@ def submit_report(
|
|||||||
request: HttpRequest, campaign_id: UUID, report: schemas.SubmitReportIn
|
request: HttpRequest, campaign_id: UUID, report: schemas.SubmitReportIn
|
||||||
) -> tuple[status, schemas.SubmitReportOut]:
|
) -> tuple[status, schemas.SubmitReportOut]:
|
||||||
campaign = get_object_or_404(Campaign, id=campaign_id)
|
campaign = get_object_or_404(Campaign, id=campaign_id)
|
||||||
client = get_object_or_404(Client, id=report.client)
|
client = get_object_or_404(Client, id=report.client_id)
|
||||||
|
|
||||||
try:
|
try:
|
||||||
CampaignImpression.objects.get(campaign=campaign, client=client)
|
CampaignImpression.objects.get(campaign=campaign, client=client)
|
||||||
|
|||||||
Reference in New Issue
Block a user