Как получить приложение, от которого модель Django?

Сервис не ограничивается угловым, даже в Angular2 +,

. Сервис - это просто набор вспомогательных функций ...

И существует множество способов их создания и повторного использования приложение ...

1) Они могут быть все разделенные функции, которые экспортируются из js-файла, как показано ниже:

export const firstFunction = () => {
   return "firstFunction";
}

export const secondFunction = () => {
   return "secondFunction";
}
//etc

2) Мы также можем использовать заводской метод например, с набором функций ... с ES6 это может быть класс, а не конструктор функции:

class myService {

  constructor() {
    this._data = null;
  }

  setMyService(data) {
    this._data = data;
  }

  getMyService() {
    return this._data;
  }

}

В этом случае вам нужно создать экземпляр с новым ключом ...

const myServiceInstance = new myService();

Также в этом случае каждый экземпляр имеет свою собственную жизнь, поэтому будьте осторожны, если вы хотите поделиться им, в этом случае вам нужно экспортировать только тот экземпляр, который вы хотите ...

3) Если ваша функция и utils не будут разделены, вы можете даже поместить их в компонент React, в этом случае, как функцию в вашем компоненте реакции ...

class Greeting extends React.Component {
  getName() {
    return "Alireza Dezfoolian";
  }

  render() {
    return <h1>Hello, {this.getName()}</h1>;
  }
}

4) Еще один способ, которым вы может обрабатывать вещи, может использовать Redux, это временный магазин для вас, поэтому, если вы его используете в своем приложении React lication, он может помочь вам с множеством функций setter setter, которые вы используете ... Это похоже на большой магазин, в котором хранятся следы ваших состояний, и вы можете делиться ими по своим компонентам, поэтому можете избавиться от многих проблем, возникающих при работе с геттерами, которые мы используем в услуги ...

Всегда полезно делать СУХОЙ код и не повторять то, что нужно использовать, чтобы сделать код многоразовым и читаемым, но не пытайтесь следовать угловым способам в приложении React, как указано в пункте 4, использование Redux может снизить потребность в услугах и ограничить их использование для некоторых вспомогательных вспомогательных функций, таких как item 1 ...

29
задан e-satis 30 April 2010 в 06:29
поделиться

2 ответа

Вам не нужно получать приложение или модель только для того, чтобы получить тип контента - для этого есть удобный метод:

from django.contrib.contenttypes.models import ContentType

ContentType.objects.get_for_model(myobject)

Несмотря на название, он работает как для классов модели, так и для экземпляров. ,

33
ответ дан Henry Woody 28 November 2019 в 00:36
поделиться

app_label доступно в качестве атрибута атрибута _meta любой модели.

from django.contrib.auth.models import User
print User._meta.app_label
# The object name is also available
print User._meta.object_name
90
ответ дан Wogan 28 November 2019 в 00:36
поделиться