コード例 #1
0
ファイル: home.py プロジェクト: sakkhat/alpha
class FavoriteSpaceSerializer(ModelSerializer):
    space = ReadOnlyField(source='space.name')
    display = ReadOnlyField(source='space.display_name')

    class Meta:
        model = Favorite
        fields = ('time_date', 'space', 'display')
コード例 #2
0
class SiteSerializer(ModelSerializer):
    client_name = ReadOnlyField(source="client.name")
    custom_fields = SiteCustomFieldSerializer(many=True, read_only=True)
    agent_count = ReadOnlyField()

    class Meta:
        model = Site
        fields = (
            "id",
            "name",
            "server_policy",
            "workstation_policy",
            "alert_template",
            "client_name",
            "client",
            "custom_fields",
            "agent_count",
            "block_policy_inheritance",
        )

    def validate(self, val):
        if "name" in val.keys() and "|" in val["name"]:
            raise ValidationError("Site name cannot contain the | character")

        return val
コード例 #3
0
class ScriptSerializer(ModelSerializer):

    code = ReadOnlyField()
    filepath = ReadOnlyField()

    class Meta:
        model = Script
        fields = "__all__"

    def validate(self, val):
        if "filename" in val:
            # validate the filename
            if (not val["filename"].endswith(".py")
                    and not val["filename"].endswith(".ps1")
                    and not val["filename"].endswith(".bat")):
                raise ValidationError(
                    "File types supported are .py, .ps1 and .bat")

            # make sure file doesn't already exist on server
            # but only if adding, not if editing since will overwrite if edit
            if not self.instance:
                script_path = os.path.join("/srv/salt/scripts/userdefined",
                                           val["filename"])
                if os.path.exists(script_path):
                    raise ValidationError(
                        f"{val['filename']} already exists. Delete or edit the existing script first."
                    )

        return val
コード例 #4
0
class PostSerializer(ModelSerializer):
    author = ReadOnlyField(source='author.username')
    group = ReadOnlyField(source='group.title')

    class Meta:
        fields = '__all__'
        model = Post
コード例 #5
0
ファイル: serializers.py プロジェクト: siemunlam/web
class ReglaDePreCategorizacionSerializer(ModelSerializer):
    condicion_descripcion = ReadOnlyField(source='condicion.descripcion')
    condicion_factorpc_descripcion = ReadOnlyField(
        source='condicion.factorDePreCategorizacion.descripcion')
    resultado_descripcion = ReadOnlyField(source='resultado.descripcion')

    class Meta:
        model = ReglaDePreCategorizacion
        fields = [
            'id', 'condicion', 'condicion_descripcion',
            'condicion_factorpc_descripcion', 'resultado',
            'resultado_descripcion', 'prioridad'
        ]
        extra_kwargs = {
            'condicion': {
                'style': {
                    'autofocus': True
                }
            },
            'resultado': {
                'label': 'Categoría'
            },
            'prioridad': {
                'min_value': 0
            },
        }
コード例 #6
0
ファイル: serializers.py プロジェクト: siemunlam/web
class ReglaDeAjusteSerializer(ModelSerializer):
    condicion_descripcion = ReadOnlyField(source='condicion.descripcion')
    condicion_factora_descripcion = ReadOnlyField(
        source='condicion.factorDeAjuste.descripcion')
    resultado_valor = ReadOnlyField(source='resultado.valor')

    class Meta:
        model = ReglaDeAjuste
        fields = [
            'id', 'condicion', 'condicion_descripcion',
            'condicion_factora_descripcion', 'resultado', 'resultado_valor',
            'prioridad'
        ]
        extra_kwargs = {
            'condicion': {
                'style': {
                    'autofocus': True
                }
            },
            'resultado': {
                'label': 'Ajuste'
            },
            'prioridad': {
                'min_value': 0
            },
        }
コード例 #7
0
ファイル: serializers.py プロジェクト: BeryJu/pyazo
class ObjectSerializer(HyperlinkedModelSerializer):
    """Object serializer (showing URL to file and thumbnail)"""

    file_url = SerializerMethodField()
    thumbnail_url = SerializerMethodField()
    md5 = ReadOnlyField()
    sha256 = ReadOnlyField()
    sha512 = ReadOnlyField()
    mime_type = ReadOnlyField()

    def get_file_url(self, obj):
        """Build absolute URL based on sha512"""
        return self.context["request"].build_absolute_uri(
            reverse("view_sha512", kwargs={"file_hash": obj.sha512}))

    def get_thumbnail_url(self, obj):
        """Build absolute URL based on sha512"""
        return self.context["request"].build_absolute_uri(
            reverse("view_sha512", kwargs={"file_hash": obj.sha512}) +
            "?thumb")

    class Meta:

        model = Object
        fields = [
            "pk",
            "file",
            "file_url",
            "thumbnail_url",
            "md5",
            "sha256",
            "sha512",
            "collection",
            "mime_type",
        ]
コード例 #8
0
class RoleCreateSerializer(ModelSerializer):

    role_id = ReadOnlyField(source='id')
    id = IntegerField(source='player_id')
    first_name = ReadOnlyField(source='player.first_name')
    last_name = ReadOnlyField(source='player.last_name')
    img = ImageField(source='player.img', read_only=True)

    class Meta:
        model = Role
        fields = 'id', 'role', 'role_id', 'first_name', 'last_name', 'img'

    def to_representation(self, obj):
        data = super().to_representation(obj)
        request = self.context.get('request', None)

        if request and request.accepted_renderer.format == 'api':
            data['url'] = reverse('team-role-detail', (obj.team_id, obj.id),
                                  request=request)
        return data

    def create(self, validated_data):
        validated_data['team_id'] = self.context['view'].kwargs['team_pk']
        try:
            return super().create(validated_data)
        except IntegrityError as e:
            raise RelationAlreadyExist(detail=e.args[0].split('DETAIL:  ')[1])
コード例 #9
0
class CategorySerializer(ModelSerializer):
    sub_categories = ReadOnlyField(source='get_sub_categories')
    products = ReadOnlyField(source='get_products')

    class Meta:
        model = Category
        fields = ('id', 'name', 'sub_categories', 'products')
コード例 #10
0
class SiteTreeSerializer(ModelSerializer):
    maintenance_mode = ReadOnlyField(source="has_maintenanace_mode_agents")
    failing_checks = ReadOnlyField(source="has_failing_checks")

    class Meta:
        model = Site
        fields = "__all__"
コード例 #11
0
ファイル: serializers.py プロジェクト: jgwerner/django
class InvitationSerializer(ModelSerializer):
    id = ReadOnlyField()
    invited_by = ReadOnlyField(source='invited_by.get_display_name')

    class Meta:
        model = Invitation
        fields = ('id', 'team', 'email', 'role', 'invited_by', 'is_accepted')
コード例 #12
0
class ReplaySerializer(HyperlinkedModelSerializer):

    id = ReadOnlyField()

    goal_set = GoalSerializer(
        many=True,
        read_only=True,
    )

    player_set = PlayerSerializer(
        many=True,
        read_only=True,
    )

    map = MapSerializer(
        many=False,
        read_only=True,
    )

    season = SeasonSerializer(
        many=False,
        read_only=True,
    )

    user_id = ReadOnlyField()

    class Meta:
        model = Replay
        exclude = ['user', 'crashed_heatmap_parser']
        depth = 1
コード例 #13
0
class ProductReactSerializer(ModelSerializer):
    title = ReadOnlyField(source='product.title')
    space = ReadOnlyField(source='product.space.name')

    class Meta:
        model = ProductReact
        fields = ('react', 'time_date', 'product', 'title', 'space')
コード例 #14
0
class SetCardListSerializer(ModelSerializer):
    id = ReadOnlyField(source='card.id')
    name = ReadOnlyField(source='card.name')

    class Meta:
        model = CardSet
        fields = ('id', 'name', 'image')
コード例 #15
0
class UniversityShortSerializer(ModelSerializer):
    city_name = ReadOnlyField()
    country_name = ReadOnlyField()

    class Meta:
        model = University
        fields = ('id', 'name', 'city_name', 'country_name', 'latitude',
                  'longitude')
コード例 #16
0
class ProductSerializer(ModelSerializer):
    category = ReadOnlyField(source='get_category')
    subcategory_name = ReadOnlyField(source='get_subcategory')

    class Meta:
        model = Product
        fields = ('name', 'subcategory', 'category', 'subcategory_name')
        fields = ('name', 'subcategory', 'category', 'subcategory_name')
コード例 #17
0
class ClientTreeSerializer(ModelSerializer):
    sites = SiteTreeSerializer(many=True, read_only=True)
    maintenance_mode = ReadOnlyField(source="has_maintenanace_mode_agents")
    failing_checks = ReadOnlyField(source="has_failing_checks")

    class Meta:
        model = Client
        fields = "__all__"
コード例 #18
0
class ParkingSpotSerializer(ModelSerializer):
    # parking = ParkingSerializer()
    driver_name = ReadOnlyField()
    status_title = ReadOnlyField()

    class Meta:
        model = ParkingSpot
        fields = '__all__'
コード例 #19
0
class DeviceSerializer(ModelSerializer):
    networks = StringRelatedField(many=True, read_only=True)
    zone_name = ReadOnlyField(source='pop.zone.name')
    pop_name = ReadOnlyField(source='pop.name')

    class Meta:
        model = PopDevice
        fields = ['name', 'zone_name', 'pop_name', 'id', 'pop', 'networks']
コード例 #20
0
class CardExpansionSerializer(ModelSerializer):
    set_id = ReadOnlyField(source='set.id')
    set_name = ReadOnlyField(source='set.name')
    set_abbreviation = ReadOnlyField(source='set.abbreviation')

    class Meta:
        model = CardSet
        fields = ('set_id', 'set_name', 'set_abbreviation', 'info', 'image')
コード例 #21
0
class OrderLineSerializer(ModelSerializer):
    product = ReadOnlyField(source='product.name')
    status = ChoiceField(choices=OrderLine.STATUSES)
    status_description = ReadOnlyField(source='get_status_display')

    class Meta:
        model = OrderLine
        fields = ('id', 'product', 'quantity', 'status', 'status_description')
コード例 #22
0
class GoalSerializer(HyperlinkedModelSerializer):

    goal_time = ReadOnlyField()

    player_id = ReadOnlyField()

    class Meta:
        model = Goal
コード例 #23
0
ファイル: serializers.py プロジェクト: jgwerner/django
class MembershipSerializer(ModelSerializer):
    first_name = ReadOnlyField(source='user.first_name')
    last_name = ReadOnlyField(source='user.last_name')
    display_name = ReadOnlyField(source='user.get_display_name')

    class Meta:
        model = Membership
        fields = ('id', 'first_name', 'last_name', 'display_name', 'role')
コード例 #24
0
class CalificacionSerializer(HyperlinkedModelSerializer):
    establecimiento_id = ReadOnlyField(source='establecimiento.id')
    establecimiento_nombre = ReadOnlyField(source='establecimiento.nombre')

    class Meta:
        model = Calificacion
        fields = ('id', 'url', 'puntaje', 'fecha', 'comentario', 'usuario',
                  'establecimiento', 'establecimiento_id',
                  'establecimiento_nombre')
コード例 #25
0
class CreditSerializer(ModelSerializer):
    request = CreditRequestSerializer()
    manager_name = ReadOnlyField(source='manager.first_name')
    manager_lname = ReadOnlyField(source='manager.last_name')

    class Meta:
        model = Credit
        fields = ('id', 'installment_value', 'date', 'manager_name',
                  'manager_lname', 'request')
コード例 #26
0
class DriverSerializer(ModelSerializer):
    # user = UserSerializer()
    name = ReadOnlyField()
    email = ReadOnlyField()
    phone = ReadOnlyField()

    class Meta:
        model = Driver
        fields = '__all__'
コード例 #27
0
ファイル: serializers.py プロジェクト: masterjon/comego-api
class ActividadSerializer(ModelSerializer):
    category = ReadOnlyField(source='category.title')
    salon = ReadOnlyField(source='salon.title')

    presentaciones = PresentacionSerializer(many=True)

    class Meta:
        model = models.Actividad
        fields = '__all__'
コード例 #28
0
class OrderItemSerializer(ModelSerializer):
    catalog_text = ReadOnlyField()
    product_text = ReadOnlyField()

    class Meta:
        model = OrderItem
        fields = [
            'id', 'product', 'order', 'description', 'amount', 'price',
            'is_ready', 'product_text', 'catalog_text'
        ]
コード例 #29
0
class StudentSerializer(ModelSerializer):
    code = ReadOnlyField(source='user.code')
    fullname = ReadOnlyField(source='user.fullname')
    avatar = ReadOnlyField(source='user.photo')
    is_active = ReadOnlyField(source='user.is_active')
    registered = ReadOnlyField(source='user.registered')

    class Meta:
        model = models.Student
        fields = ('code','fullname','book_number','department','group_number','degree','is_active','registered', 'avatar')
コード例 #30
0
class AlertSerializer(ModelSerializer):

    hostname = ReadOnlyField(source="agent.hostname")
    client = ReadOnlyField(source="agent.client")
    site = ReadOnlyField(source="agent.site")
    alert_time = DateTimeField(format="iso-8601")

    class Meta:
        model = Alert
        fields = "__all__"