Я использовал эти коды, переведенные на C ++. Есть две конкретные заметки, затем я отправлю код.
КОД:
void __fastcall TForm3::StringGrid1DrawCell(TObject *Sender, int ACol, int ARow, TRect &Rect,
TGridDrawState State)
{
UnicodeString uStr = "Hello";
int k, l;
char cc[100];
if(TRUE)
{
if((ACol <= 1) || (ARow <= 1))
{
StringGrid1->Canvas->Font->Color = clBlack;
StringGrid1->Canvas->Brush->Color = clBtnFace;
if(ACol == 0)
{
if(ARow > 1)
{
sprintf( cc, " %5.1f", rowLabels[ARow - 2]);
uStr = cc;
StringGrid1->Canvas->TextRect( Rect, Rect.left+2, Rect.top+2, uStr);
StringGrid1->Canvas->FrameRect(Rect);
}
}
if(ARow == 0)
{
if(ACol > 1)
{
sprintf( cc, " %5.1f", colLabels[ACol - 2]);
uStr = cc;
StringGrid1->Canvas->TextRect( Rect, Rect.left+2, Rect.top+2, uStr);
StringGrid1->Canvas->FrameRect(Rect);
}
}
}
else
{
switch (ACol%2)
{
case 0:
{
StringGrid1->Canvas->Font->Color = clRed;
StringGrid1->Canvas->Brush->Color = 0x00E1FFF9;
break;
}
case 1:
{
StringGrid1->Canvas->Font->Color = clBlue;
StringGrid1->Canvas->Brush->Color = 0x00FFEBDF;
break;
}
}
StringGrid1->Canvas->TextRect( Rect, Rect.left+2, Rect.top+2, uStr);
StringGrid1->Canvas->FrameRect(Rect);
}
}
}
Когда вы говорите, что у них есть флаг, означает ли это, что у них есть атрибут с именем admin
?
Если да, то любую модель с логическим значением в рельсах можно проверить с помощью:
[110 ] Если есть другой способ определить, является ли пользователь администратором или нет, вам нужно добавить метод admin?
в класс пользователя, который можно использовать для определения его статуса в представлении. [115 ]
Вы можете использовать имя столбца пользователя is_admin в представлениях.
<% if current_user.is_admin? %>