От apt-get(8)
(шахта акцента):
-a, - архитектура хоста
Эти средства управления опцией пакеты архитектуры создаются для [1 116] склонный - получают источник - компиляция и как перекрестно-builddependencies удовлетворены. По умолчанию это не набор, что означает, что архитектура хоста совпадает с архитектурой сборки (который определяется APT:: Архитектура). Элемент конфигурации: APT:: Доберитесь:: архитектуру хоста
-a
опция не соблюдают install
опция. С Мультидугой, и download
опция, можно использовать:
apt-get download wvdial:powerpc
Это требует, чтобы Вы добавили архитектуру PowerPC к списку поддерживаемой архитектуры. Начиная с Ubuntu только обеспечивают пакеты для i386
и amd64
, это все еще не собирается работать все же. Можно иметь больше успеха с ручным получением пакета от Debian, поскольку они поддерживают больше архитектуры, чем просто i386 и amd64: http://packages.debian.org/wvdial
Что ж, вы могли бы создать метод внутри класса ProductType, который возвращает два первых результата для своих продуктов:
class ProductType(models.Model):
product_type = models.CharField(max_length=100)
def TopTwoProducts(self):
return self.product_set.order_by('-score')[0:2]
Затем вы просто делаете что-то вроде:
for type in ProductType.objects.all():
type.TopTwoProducts()
Однажды я был в таком же неудобном положении. У меня были данные, которые должны были быть в двоичном формате, но не в виде обычного текста. Мое решение состояло в том, чтобы зашифровать данные, используя очень простую схему, которая делала их похожими на остальную часть программы. Я зашифровал его, написав программу, которая взяла строку, преобразовала все символы в код ASCII (с добавлением нулей по мере необходимости, чтобы получить трехзначное число), а затем добавил случайную цифру в начало и конец трехзначного кода. . Таким образом, каждый символ строки был представлен 5 символами (всеми числами) в зашифрованной строке. Я вставил эту строку в приложение как константу, а затем, когда мне нужно было использовать строку, я расшифровал и сохранил результат в переменной, достаточно долго, чтобы сделать то, что мне нужно.
Итак, чтобы использовать ваш пример: «Мой надежный ключ шифрования " становится "207719121310329211541116181145111157110071030703283101101109309926114151216611289116161056811109110470321510787101511213". Затем, когда вам понадобится ключ шифрования, расшифруйте его, но отмените процесс.
Это, конечно, не пуленепробиваемое, но я к этому не стремился.
myproducttype = ProductType.objects.get(...)
myproducttype.products.top_score() # return top 2 products
Это обеспечивает более согласованный синтаксис: доступ к связанным продуктам всегда осуществляется через products , top_score , действующий как фильтр. Кроме того, класс ProductType больше не загроможден логикой запросов продукта.