Tengo dos campos que quiero representar, pero yo sólo quiero el segundo para mostrar cuando la primera esté vacía. Corto de anular el campo en un archivo de plantilla, se puede hacer esto usando la funcionalidad en el construido en la funcionalidad de vistas?

Por qué aún no se ha aceptado una de las respuestas?

OriginalEl autor Allain Lalonde | 2010-12-05

6 Comentarios

  1. 15

    Para las vistas 3 , drupal 7

    • De salida deseado – Mostrar campo1 si campo2 está vacía.

    Añadir ambos campos a la vista en el campo1, campo2 orden y select campo1 casilla de verificación «excluir de la pantalla».

    Ir a campo2 y configurar «No Muestran resultados de comportamiento». Agregar campo1 modelo de reemplazo e.g [campo1] y seleccione «Contar el número 0 como vacío» , «Ocultar si está vacío» y «Ocultar la reescritura de si está vacío».

    Ahora esto va a producir si los demás la funcionalidad de estos dos campos.

    usted es hombre de genio

    OriginalEl autor atyagi

  2. 3
    1. Agregar el campo que desea mostrar. Seleccione «excluir de la pantalla».
    2. Agregar el campo que desea controlar si muestra la anterior. Seleccione «reescritura de salida». Utilizar el token de reemplazo para mostrar que el campo anterior. Marca «Ocultar si está vacío»
    3. No hay tres.

    PS: Citado de la opción de textos pueden no ser los más adecuados (estoy buscando la traducción de su sitio), pero usted consigue la idea.

    OriginalEl autor

  3. 1

    Yo normalmente uso el views_customfield módulo para este tipo de cosas. Agregar un tercer campo a la vista que es un php customfield, y excluir de su segundo campo de visualización. A continuación, puede escribir un muy rápido el fragmento de código PHP en el customfield que se comprueba si el primer campo está vacío y se imprime el segundo campo si es que.

    OriginalEl autor Finbarr

  4. 1

    Usted puede hacer esto fácilmente por los siguientes pasos (yo lo he probado en drupal 7):

    1. Añadir ambos campos
    2. hacer la primera invisible (excluir de la pantalla)
    3. en el segundo campo ir a ningún resultado, el comportamiento de la ficha.
    4. escribir el símbolo del primer campo (ejemplo: [nombre_campo]).

    Se debe trabajar, espero que trabajará con usted

    OriginalEl autor Samer Hijazi

  5. 0

    Mi solución para mostrar field_1 para la versión en inglés y field_2 para la traducción de la versión:

    Con el uso de paneles:

    1. Hacer dos copias de la vista mediante la adición de otra pantalla a la vista.

    2. En la vista original de la pantalla de eliminar o excluir de la pantalla field_2, en la segunda pantalla de quitar field_1.

    3. En su panel de agregar tanto de su vista se muestra como un panel de vidrio.

    4. Para la primera vista de la pantalla del panel de agregar Visibility rule -> User:language -> English.

    5. Para el segundo la vista de la pantalla del panel de agregar Visibility rule -> User:language -> Your_second_language.

    Parece complicado, pero es realmente simple para que las personas se familiaricen con paneles y puntos de vista.
    Esta solución no requiere cambiar el código ni el conocimiento de los temas.

    OriginalEl autor Pavlus

  6. -2

    Usted puede tipo de masaje en el trabajo con contemplar. Se podría hacer algo como esto:

        <?php 
    if(empty($node->field_foo[0]['view'])){ ?>
    <?php print $node->field_bar[0]['view'] ?>
    <?php } ?>
    El uso de contemplar puede ser muy peligroso – es digno de mirar en separar el tema de la lógica de la base de datos mediante phptemplate archivos (x.tpl.php)
    Lo que lo hace peligroso?
    La Paranoia…….
    No es peligroso, es muy difícil de mantener. Los futuros desarrolladores que trabajan en este proyecto se necesita saber acerca de este y la mayoría de los devs creo que buscar el código en el código, en lugar de enterrado en una vista.

    OriginalEl autor Jimmy

Dejar respuesta

Please enter your comment!
Please enter your name here